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/audio/audacity/default.nix1
-rw-r--r--pkgs/applications/audio/bambootracker/default.nix4
-rw-r--r--pkgs/applications/audio/cava/default.nix14
-rw-r--r--pkgs/applications/audio/cider/default.nix4
-rw-r--r--pkgs/applications/audio/espeak-ng/default.nix36
-rw-r--r--pkgs/applications/audio/fluidsynth/default.nix4
-rw-r--r--pkgs/applications/audio/goodvibes/default.nix61
-rw-r--r--pkgs/applications/audio/mmlgui/default.nix6
-rw-r--r--pkgs/applications/audio/mmtc/default.nix14
-rw-r--r--pkgs/applications/audio/musikcube/default.nix15
-rw-r--r--pkgs/applications/audio/netease-cloud-music-gtk/default.nix17
-rw-r--r--pkgs/applications/audio/pianobooster/default.nix56
-rw-r--r--pkgs/applications/audio/pt2-clone/default.nix4
-rw-r--r--pkgs/applications/audio/qmmp/default.nix4
-rw-r--r--pkgs/applications/audio/radiotray-ng/default.nix2
-rw-r--r--pkgs/applications/audio/tagger/default.nix4
-rw-r--r--pkgs/applications/audio/tenacity/default.nix7
-rw-r--r--pkgs/applications/backup/proxmox-backup-client/Cargo.lock1910
-rw-r--r--pkgs/applications/backup/proxmox-backup-client/default.nix70
-rw-r--r--pkgs/applications/backup/proxmox-backup-client/re-route-dependencies.patch148
-rw-r--r--pkgs/applications/backup/timeshift/unwrapped.nix2
-rw-r--r--pkgs/applications/blockchains/bisq-desktop/default.nix4
-rw-r--r--pkgs/applications/blockchains/bitcoin-knots/default.nix6
-rw-r--r--pkgs/applications/blockchains/groestlcoin/default.nix4
-rw-r--r--pkgs/applications/blockchains/ledger-live-desktop/default.nix4
-rw-r--r--pkgs/applications/blockchains/lnd/default.nix6
-rw-r--r--pkgs/applications/blockchains/wownero/default.nix4
-rw-r--r--pkgs/applications/blockchains/zcash/default.nix32
-rw-r--r--pkgs/applications/blockchains/zcash/patches/fix-missing-header.patch10
-rw-r--r--pkgs/applications/display-managers/lightdm-slick-greeter/default.nix2
-rw-r--r--pkgs/applications/editors/codeblocks/default.nix4
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/emacspeak/default.nix4
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/evil-markdown/default.nix8
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/idris2-mode/default.nix32
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/manual-packages.nix2
-rw-r--r--pkgs/applications/editors/nedit/default.nix5
-rw-r--r--pkgs/applications/editors/vim/plugins/generated.nix672
-rw-r--r--pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix1374
-rw-r--r--pkgs/applications/editors/vim/plugins/nvim-treesitter/overrides.nix38
-rw-r--r--pkgs/applications/editors/vim/plugins/nvim-treesitter/update-shell.nix17
-rwxr-xr-xpkgs/applications/editors/vim/plugins/nvim-treesitter/update.py123
-rw-r--r--pkgs/applications/editors/vim/plugins/overrides.nix22
-rw-r--r--pkgs/applications/editors/vim/plugins/vim-plugin-names6
-rw-r--r--pkgs/applications/editors/vis/default.nix4
-rw-r--r--pkgs/applications/editors/vscode/extensions/default.nix56
-rw-r--r--pkgs/applications/editors/vscode/vscode.nix12
-rw-r--r--pkgs/applications/editors/vscode/vscodium.nix12
-rw-r--r--pkgs/applications/editors/xed-editor/default.nix2
-rw-r--r--pkgs/applications/emulators/bochs/default.nix59
-rw-r--r--pkgs/applications/emulators/cemu/cmakelists.patch12
-rw-r--r--pkgs/applications/emulators/cemu/default.nix119
-rw-r--r--pkgs/applications/emulators/mame/default.nix52
-rw-r--r--pkgs/applications/emulators/mame/emuopts.patch57
-rw-r--r--pkgs/applications/emulators/mgba/default.nix16
-rw-r--r--pkgs/applications/emulators/retroarch/cores.nix809
-rw-r--r--pkgs/applications/emulators/retroarch/default.nix78
-rw-r--r--pkgs/applications/emulators/retroarch/libretro-core-info.nix28
-rw-r--r--pkgs/applications/emulators/retroarch/mkLibretroCore.nix80
-rw-r--r--pkgs/applications/emulators/retroarch/use-fixed-path-for-libretro_core_info.patch41
-rw-r--r--pkgs/applications/emulators/retroarch/use-fixed-paths.patch154
-rw-r--r--pkgs/applications/emulators/retroarch/wrapper.nix61
-rw-r--r--pkgs/applications/emulators/rpcs3/default.nix8
-rw-r--r--pkgs/applications/emulators/uxn/default.nix28
-rw-r--r--pkgs/applications/file-managers/xfe/default.nix29
-rw-r--r--pkgs/applications/gis/saga/default.nix4
-rw-r--r--pkgs/applications/graphics/batik/default.nix4
-rw-r--r--pkgs/applications/graphics/hydrus/default.nix4
-rw-r--r--pkgs/applications/graphics/inkscape/default.nix7
-rw-r--r--pkgs/applications/graphics/rnote/default.nix14
-rw-r--r--pkgs/applications/graphics/vengi-tools/default.nix4
-rw-r--r--pkgs/applications/graphics/xfig/default.nix2
-rw-r--r--pkgs/applications/graphics/xmountains/default.nix4
-rw-r--r--pkgs/applications/misc/ausweisapp2/default.nix4
-rw-r--r--pkgs/applications/misc/blender/default.nix4
-rw-r--r--pkgs/applications/misc/darkman/default.nix4
-rw-r--r--pkgs/applications/misc/dstask/default.nix6
-rw-r--r--pkgs/applications/misc/fluidd/default.nix4
-rw-r--r--pkgs/applications/misc/gallery-dl/default.nix23
-rw-r--r--pkgs/applications/misc/hugo/default.nix6
-rw-r--r--pkgs/applications/misc/jgmenu/default.nix7
-rw-r--r--pkgs/applications/misc/josm/default.nix6
-rw-r--r--pkgs/applications/misc/keepassx/community.nix4
-rw-r--r--pkgs/applications/misc/logseq/default.nix4
-rw-r--r--pkgs/applications/misc/lutris/fhsenv.nix9
-rw-r--r--pkgs/applications/misc/mediaelch/default.nix4
-rw-r--r--pkgs/applications/misc/metadata-cleaner/default.nix13
-rw-r--r--pkgs/applications/misc/obsidian/default.nix4
-rw-r--r--pkgs/applications/misc/oneko/default.nix11
-rw-r--r--pkgs/applications/misc/passky-desktop/default.nix6
-rw-r--r--pkgs/applications/misc/plover/default.nix3
-rw-r--r--pkgs/applications/misc/prusa-slicer/default.nix10
-rw-r--r--pkgs/applications/misc/prusa-slicer/super-slicer.nix4
-rw-r--r--pkgs/applications/misc/slade/default.nix58
-rw-r--r--pkgs/applications/misc/slade/git.nix47
-rw-r--r--pkgs/applications/misc/spicetify-cli/default.nix6
-rw-r--r--pkgs/applications/misc/sticky/default.nix2
-rw-r--r--pkgs/applications/misc/synergy/default.nix7
-rw-r--r--pkgs/applications/misc/vhs/default.nix38
-rw-r--r--pkgs/applications/misc/waybar/default.nix4
-rw-r--r--pkgs/applications/misc/wofi/default.nix19
-rw-r--r--pkgs/applications/misc/wordnet/default.nix4
-rw-r--r--pkgs/applications/misc/workrave/default.nix83
-rw-r--r--pkgs/applications/misc/xca/default.nix8
-rw-r--r--pkgs/applications/misc/xplr/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/chromium/upstream-info.json40
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/release_sources.nix786
-rw-r--r--pkgs/applications/networking/browsers/firefox/packages.nix4
-rw-r--r--pkgs/applications/networking/browsers/librewolf/src.json10
-rw-r--r--pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/argo/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/argocd/default.nix8
-rw-r--r--pkgs/applications/networking/cluster/arkade/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/glooctl/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/istioctl/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/k3s/default.nix12
-rw-r--r--pkgs/applications/networking/cluster/k3sup/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/kluctl/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/kubecfg/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/odo/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/talosctl/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/temporal-cli/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/temporalite/default.nix35
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/providers.json232
-rw-r--r--pkgs/applications/networking/cluster/terraform/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/tfswitch/default.nix4
-rw-r--r--pkgs/applications/networking/flexget/default.nix4
-rw-r--r--pkgs/applications/networking/gmailctl/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/discord/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/discord/linux.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/element/element-web.nix14
-rw-r--r--pkgs/applications/networking/instant-messengers/element/pin.json10
-rw-r--r--pkgs/applications/networking/instant-messengers/element/regenerate-element-web-yarn.lock.diff32
-rwxr-xr-xpkgs/applications/networking/instant-messengers/element/update.sh3
-rw-r--r--pkgs/applications/networking/instant-messengers/feishu/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/gurk-rs/default.nix10
-rw-r--r--pkgs/applications/networking/instant-messengers/jami/client-qt.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/jami/default.nix25
-rwxr-xr-xpkgs/applications/networking/instant-messengers/jami/update.sh4
-rw-r--r--pkgs/applications/networking/instant-messengers/session-desktop/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/webex/default.nix8
-rw-r--r--pkgs/applications/networking/irc/irssi/default.nix4
-rw-r--r--pkgs/applications/networking/maestral-qt/default.nix53
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix530
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird/packages.nix4
-rw-r--r--pkgs/applications/networking/n8n/node-packages.nix732
-rw-r--r--pkgs/applications/networking/newsreaders/liferea/default.nix4
-rw-r--r--pkgs/applications/networking/qv2ray/default.nix2
-rw-r--r--pkgs/applications/networking/resilio-sync/default.nix4
-rw-r--r--pkgs/applications/networking/syncthing/default.nix6
-rw-r--r--pkgs/applications/networking/synology-cloud-sync-decryption-tool/default.nix43
-rw-r--r--pkgs/applications/office/fava/default.nix4
-rw-r--r--pkgs/applications/office/karlender/default.nix13
-rw-r--r--pkgs/applications/office/mmex/default.nix60
-rw-r--r--pkgs/applications/office/paper-note/default.nix58
-rw-r--r--pkgs/applications/office/scribus/default.nix5
-rw-r--r--pkgs/applications/office/trilium/default.nix6
-rw-r--r--pkgs/applications/office/zotero/default.nix4
-rw-r--r--pkgs/applications/radio/direwolf/default.nix2
-rw-r--r--pkgs/applications/radio/freedv/default.nix7
-rw-r--r--pkgs/applications/radio/guglielmo/default.nix4
-rw-r--r--pkgs/applications/radio/qradiolink/default.nix8
-rw-r--r--pkgs/applications/radio/rtl_433/default.nix4
-rw-r--r--pkgs/applications/science/astronomy/gnuastro/default.nix4
-rw-r--r--pkgs/applications/science/biology/mmseqs2/default.nix50
-rw-r--r--pkgs/applications/science/biology/sambamba/default.nix11
-rw-r--r--pkgs/applications/science/chemistry/element/default.nix6
-rw-r--r--pkgs/applications/science/electronics/kicad/base.nix3
-rw-r--r--pkgs/applications/science/electronics/kicad/default.nix7
-rw-r--r--pkgs/applications/science/electronics/kicad/versions.nix20
-rw-r--r--pkgs/applications/science/electronics/ngspice/default.nix2
-rw-r--r--pkgs/applications/science/electronics/verilator/default.nix22
-rw-r--r--pkgs/applications/science/logic/cbmc/default.nix4
-rw-r--r--pkgs/applications/science/logic/nusmv/default.nix37
-rw-r--r--pkgs/applications/science/math/cemu-ti/default.nix (renamed from pkgs/applications/science/math/cemu/default.nix)28
-rw-r--r--pkgs/applications/science/robotics/mujoco/default.nix122
-rw-r--r--pkgs/applications/science/robotics/mujoco/dependencies.patch114
-rw-r--r--pkgs/applications/search/recoll/default.nix7
-rw-r--r--pkgs/applications/search/recoll/fix-datadir.patch13
-rw-r--r--pkgs/applications/system/glances/default.nix6
-rw-r--r--pkgs/applications/version-management/commitizen/default.nix10
-rw-r--r--pkgs/applications/version-management/git-and-tools/gh/default.nix6
-rw-r--r--pkgs/applications/version-management/git-and-tools/git/default.nix5
-rw-r--r--pkgs/applications/version-management/git-and-tools/lefthook/default.nix4
-rw-r--r--pkgs/applications/version-management/git-repo/default.nix4
-rw-r--r--pkgs/applications/version-management/gitlab/data.json10
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/default.nix4
-rw-r--r--pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix2
-rw-r--r--pkgs/applications/version-management/sourcehut/builds.nix20
-rw-r--r--pkgs/applications/version-management/sourcehut/core.nix2
-rw-r--r--pkgs/applications/version-management/sourcehut/default.nix3
-rw-r--r--pkgs/applications/version-management/sourcehut/dispatch.nix2
-rw-r--r--pkgs/applications/version-management/sourcehut/git.nix2
-rw-r--r--pkgs/applications/version-management/sourcehut/hg.nix2
-rw-r--r--pkgs/applications/version-management/sourcehut/hub.nix4
-rw-r--r--pkgs/applications/version-management/sourcehut/lists.nix4
-rw-r--r--pkgs/applications/version-management/sourcehut/man.nix2
-rw-r--r--pkgs/applications/version-management/sourcehut/meta.nix2
-rw-r--r--pkgs/applications/version-management/sourcehut/paste.nix2
-rw-r--r--pkgs/applications/version-management/sourcehut/scm.nix2
-rw-r--r--pkgs/applications/version-management/sourcehut/todo.nix4
-rw-r--r--pkgs/applications/video/hypnotix/default.nix2
-rw-r--r--pkgs/applications/video/motion/default.nix4
-rw-r--r--pkgs/applications/video/vlc/default.nix3
-rw-r--r--pkgs/applications/video/xine-ui/default.nix2
-rw-r--r--pkgs/applications/video/xplayer/default.nix2
-rw-r--r--pkgs/applications/video/xplayer/plparser.nix2
-rw-r--r--pkgs/applications/virtualization/ecs-agent/default.nix4
-rw-r--r--pkgs/applications/virtualization/flintlock/default.nix8
-rw-r--r--pkgs/applications/virtualization/libgovirt/default.nix9
-rw-r--r--pkgs/applications/virtualization/libgovirt/no-version-script-ld-flag.patch14
-rw-r--r--pkgs/applications/virtualization/libnvidia-container/default.nix5
-rw-r--r--pkgs/applications/virtualization/lima/default.nix6
-rw-r--r--pkgs/applications/virtualization/nixpacks/default.nix6
-rw-r--r--pkgs/applications/virtualization/pods/default.nix6
-rw-r--r--pkgs/applications/virtualization/qemu/default.nix2
-rw-r--r--pkgs/applications/virtualization/virt-viewer/default.nix13
-rw-r--r--pkgs/applications/window-managers/gamescope/default.nix4
-rw-r--r--pkgs/applications/window-managers/ion-3/default.nix4
-rw-r--r--pkgs/applications/window-managers/notion/default.nix4
220 files changed, 7821 insertions, 2659 deletions
diff --git a/pkgs/applications/audio/audacity/default.nix b/pkgs/applications/audio/audacity/default.nix
index 733368c115c4c..5e583bf64727f 100644
--- a/pkgs/applications/audio/audacity/default.nix
+++ b/pkgs/applications/audio/audacity/default.nix
@@ -147,6 +147,7 @@ stdenv.mkDerivation rec {
   ];
 
   cmakeFlags = [
+    "-DAUDACITY_BUILD_LEVEL=2"
     "-DAUDACITY_REV_LONG=nixpkgs"
     "-DAUDACITY_REV_TIME=nixpkgs"
     "-DDISABLE_DYNAMIC_LOADING_FFMPEG=ON"
diff --git a/pkgs/applications/audio/bambootracker/default.nix b/pkgs/applications/audio/bambootracker/default.nix
index f19afcefc6065..875daa196d5dd 100644
--- a/pkgs/applications/audio/bambootracker/default.nix
+++ b/pkgs/applications/audio/bambootracker/default.nix
@@ -12,14 +12,14 @@
 
 mkDerivation rec {
   pname = "bambootracker";
-  version = "0.5.2";
+  version = "0.5.3";
 
   src = fetchFromGitHub {
     owner = "BambooTracker";
     repo = "BambooTracker";
     rev = "v${version}";
     fetchSubmodules = true;
-    sha256 = "sha256-+9PmpmsF08oU//pJOWaoGQzG7a2O13kYqKbGwVRAMlU=";
+    sha256 = "sha256-OaktEUWWDEW+MYnQkaB8FvkuH29VDXFqBVSTEJ7Sz7A=";
   };
 
   nativeBuildInputs = [ qmake qttools pkg-config ];
diff --git a/pkgs/applications/audio/cava/default.nix b/pkgs/applications/audio/cava/default.nix
index cc431ff46b9c7..ffb1b99fd8c75 100644
--- a/pkgs/applications/audio/cava/default.nix
+++ b/pkgs/applications/audio/cava/default.nix
@@ -1,33 +1,27 @@
 { lib, stdenv, fetchFromGitHub, autoreconfHook, alsa-lib, fftw,
-  libpulseaudio, ncurses }:
+  libpulseaudio, ncurses, iniparser }:
 
 stdenv.mkDerivation rec {
   pname = "cava";
-  version = "0.7.4";
+  version = "0.8.2";
 
   buildInputs = [
     alsa-lib
     fftw
     libpulseaudio
     ncurses
+    iniparser
   ];
 
   src = fetchFromGitHub {
     owner = "karlstav";
     repo = "cava";
     rev = version;
-    sha256 = "sha256-BlHGst34aUgQcXcuQG43VnKUTclCxfQmWRa6iCud8dc=";
+    sha256 = "sha256-5nguoC2MrcNHMQ6rMOIRdSPtjA6bx5OrMGYdU/H08z0=";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
 
-  postConfigure = ''
-    substituteInPlace Makefile.am \
-      --replace "-L/usr/local/lib -Wl,-rpath /usr/local/lib" ""
-    substituteInPlace configure.ac \
-      --replace "/usr/share/consolefonts" "$out/share/consolefonts"
-  '';
-
   meta = with lib; {
     description = "Console-based Audio Visualizer for Alsa";
     homepage = "https://github.com/karlstav/cava";
diff --git a/pkgs/applications/audio/cider/default.nix b/pkgs/applications/audio/cider/default.nix
index 7a042f6ceb1ed..7deb21bcef284 100644
--- a/pkgs/applications/audio/cider/default.nix
+++ b/pkgs/applications/audio/cider/default.nix
@@ -2,11 +2,11 @@
 
 appimageTools.wrapType2 rec {
   pname = "cider";
-  version = "1.5.6";
+  version = "1.5.7";
 
   src = fetchurl {
     url = "https://github.com/ciderapp/cider-releases/releases/download/v${version}/Cider-${version}.AppImage";
-    sha256 = "sha256-gn0dRoPPolujZ1ukuo/esSLwbhiPdcknIe9+W6iRaYw=";
+    sha256 = "sha256-fWpt7YxqEDa1U4CwyVZwgbiwe0lrh64v0cJG9pbNMUU=";
   };
 
   extraInstallCommands =
diff --git a/pkgs/applications/audio/espeak-ng/default.nix b/pkgs/applications/audio/espeak-ng/default.nix
index 6458d7188ae1f..84eb4e1d39c92 100644
--- a/pkgs/applications/audio/espeak-ng/default.nix
+++ b/pkgs/applications/audio/espeak-ng/default.nix
@@ -1,18 +1,30 @@
-{ stdenv, lib, fetchFromGitHub, autoconf, automake, which, libtool, pkg-config
-, ronn, substituteAll
-, mbrolaSupport ? true, mbrola
-, pcaudiolibSupport ? true, pcaudiolib
-, sonicSupport ? true, sonic }:
+{ stdenv
+, lib
+, fetchFromGitHub
+, autoconf
+, automake
+, which
+, libtool
+, pkg-config
+, ronn
+, substituteAll
+, mbrolaSupport ? true
+, mbrola
+, pcaudiolibSupport ? true
+, pcaudiolib
+, sonicSupport ? true
+, sonic
+}:
 
 stdenv.mkDerivation rec {
   pname = "espeak-ng";
-  version = "1.50";
+  version = "1.51";
 
   src = fetchFromGitHub {
     owner = "espeak-ng";
     repo = "espeak-ng";
     rev = version;
-    sha256 = "0jkqhf2h94vbqq7mg7mmm23bq372fa7mdk941my18c3vkldcir1b";
+    hash = "sha256-KwzMlQ3/JgpNOpuV4zNc0zG9oWEGFbVSJ4bEd3dtD3Y=";
   };
 
   patches = lib.optionals mbrolaSupport [
@@ -26,8 +38,8 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoconf automake which libtool pkg-config ronn ];
 
   buildInputs = lib.optional mbrolaSupport mbrola
-             ++ lib.optional pcaudiolibSupport pcaudiolib
-             ++ lib.optional sonicSupport sonic;
+    ++ lib.optional pcaudiolibSupport pcaudiolib
+    ++ lib.optional sonicSupport sonic;
 
   preConfigure = "./autogen.sh";
 
@@ -35,12 +47,6 @@ stdenv.mkDerivation rec {
     "--with-mbrola=${if mbrolaSupport then "yes" else "no"}"
   ];
 
-  # Current release lacks dependencies on local espeak-ng:
-  #  cd dictsource && ESPEAK_DATA_PATH=/build/espeak-ng LD_LIBRARY_PATH=../src: ../src/espeak-ng --compile=yue && cd ..
-  #  bash: line 1: ../src/espeak-ng: No such file or directory
-  # Should be fixed in next release: https://github.com/espeak-ng/espeak-ng/pull/1029
-  enableParallelBuilding = false;
-
   postInstall = lib.optionalString stdenv.isLinux ''
     patchelf --set-rpath "$(patchelf --print-rpath $out/bin/espeak-ng)" $out/bin/speak-ng
   '';
diff --git a/pkgs/applications/audio/fluidsynth/default.nix b/pkgs/applications/audio/fluidsynth/default.nix
index 1c0ddd1942d30..09abaa862f513 100644
--- a/pkgs/applications/audio/fluidsynth/default.nix
+++ b/pkgs/applications/audio/fluidsynth/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fluidsynth";
-  version = "2.2.9";
+  version = "2.3.0";
 
   src = fetchFromGitHub {
     owner = "FluidSynth";
     repo = "fluidsynth";
     rev = "v${version}";
-    sha256 = "sha256-8vsYn/4qkANp6f6avtdaXHfJD+9NTHTrl7i4RTlKXPQ=";
+    sha256 = "sha256-7SuM7a8IIecAJ83QvJfUba/wArAEXywqL2HwVbeG8H4=";
   };
 
   nativeBuildInputs = [ buildPackages.stdenv.cc pkg-config cmake ];
diff --git a/pkgs/applications/audio/goodvibes/default.nix b/pkgs/applications/audio/goodvibes/default.nix
new file mode 100644
index 0000000000000..1f09d99c88893
--- /dev/null
+++ b/pkgs/applications/audio/goodvibes/default.nix
@@ -0,0 +1,61 @@
+{ lib
+, stdenv
+, fetchFromGitLab
+, meson
+, ninja
+, pkg-config
+, glib
+, gtk3
+, libsoup
+, keybinder3
+, gst_all_1
+, wrapGAppsHook
+, appstream-glib
+, desktop-file-utils
+}:
+
+stdenv.mkDerivation rec {
+  pname = "goodvibes";
+  version = "0.7.5";
+
+  src = fetchFromGitLab {
+    owner = pname;
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-CE9f0GnXr7wSpp8jyW0ZxGKx16r6tOaObzQXKcy5nPY=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    wrapGAppsHook
+    appstream-glib
+    desktop-file-utils
+  ];
+
+  buildInputs = [
+    glib
+    gtk3
+    libsoup
+    keybinder3
+  ] ++ (with gst_all_1; [
+    gstreamer
+    gst-plugins-base
+    gst-plugins-good
+    gst-plugins-bad
+    gst-plugins-ugly
+  ]);
+
+  postPatch = ''
+    patchShebangs scripts
+  '';
+
+  meta = with lib; {
+    description = "A lightweight internet radio player";
+    homepage = "https://gitlab.com/goodvibes/goodvibes";
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ zendo ];
+  };
+}
diff --git a/pkgs/applications/audio/mmlgui/default.nix b/pkgs/applications/audio/mmlgui/default.nix
index e7de55ea0e984..bf343e101c962 100644
--- a/pkgs/applications/audio/mmlgui/default.nix
+++ b/pkgs/applications/audio/mmlgui/default.nix
@@ -15,14 +15,14 @@
 
 stdenv.mkDerivation rec {
   pname = "mmlgui";
-  version = "unstable-2022-09-15";
+  version = "unstable-2022-10-13";
 
   src = fetchFromGitHub {
     owner = "superctr";
     repo = "mmlgui";
-    rev = "163cc73a7c009d524b0d5aff94f9ed47fe19e3ce";
+    rev = "6b2687504644b481db403f032f463e38bbbb1dca";
     fetchSubmodules = true;
-    sha256 = "kKo3ge2wcDK2xU1YCfEwyqw84N+3jcbOEEsJHSpMpzY=";
+    sha256 = "OkYVjdvi8ls01DaIiDEPFXFCUh6g9AEeSlbDFfdPKeo=";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/audio/mmtc/default.nix b/pkgs/applications/audio/mmtc/default.nix
index e1cb2a1eb2304..db6e0d27be75a 100644
--- a/pkgs/applications/audio/mmtc/default.nix
+++ b/pkgs/applications/audio/mmtc/default.nix
@@ -2,25 +2,25 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "mmtc";
-  version = "0.2.15";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "figsoda";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-GQ1SoZE74o8fsXHVdjdEMbdUeefyPb4FXxidcHCy180=";
+    sha256 = "sha256-fWd349IDlN6XNv7MrqJeLwkmevZoKXLSz8a09YWsNcI=";
   };
 
-  cargoSha256 = "sha256-2IcOwjYTRl2tCB/YAuDACpgaRKZ/21IKWpVs+koYH3k=";
+  cargoSha256 = "sha256-WrEC3zWwY1plOn8DrspbJFI3R/fE6yDQT2u2lVubbQU=";
 
   nativeBuildInputs = [ installShellFiles ];
 
-  preFixup = ''
-    completions=($releaseDir/build/mmtc-*/out/completions)
-    installShellCompletion $completions/mmtc.{bash,fish} --zsh $completions/_mmtc
+  postInstall = ''
+    installManPage artifacts/mmtc.1
+    installShellCompletion artifacts/mmtc.{bash,fish} --zsh artifacts/_mmtc
   '';
 
-  GEN_COMPLETIONS = 1;
+  GEN_ARTIFACTS = "artifacts";
 
   meta = with lib; {
     description = "Minimal mpd terminal client that aims to be simple yet highly configurable";
diff --git a/pkgs/applications/audio/musikcube/default.nix b/pkgs/applications/audio/musikcube/default.nix
index 6b47d1f3c846b..9389d2d5e68f2 100644
--- a/pkgs/applications/audio/musikcube/default.nix
+++ b/pkgs/applications/audio/musikcube/default.nix
@@ -27,26 +27,15 @@
 
 stdenv.mkDerivation rec {
   pname = "musikcube";
-  version = "0.98.0";
+  version = "0.98.1";
 
   src = fetchFromGitHub {
     owner = "clangen";
     repo = pname;
     rev = version;
-    sha256 = "sha256-bnwOxEcvRXWPuqtkv8YlpclvH/6ZtQvyvHy4mqJCwik=";
+    sha256 = "sha256-pnAdlCCqWzR0W8dF9CE48K8yHMVIx3egZlXvibxU18A=";
   };
 
-  patches = []
-    ++ lib.optionals stdenv.isDarwin [
-      # Fix pending upstream inclusion for Darwin nixpkgs builds:
-      # https://github.com/clangen/musikcube/pull/531
-      (fetchpatch {
-        name = "darwin-build.patch";
-        url = "https://github.com/clangen/musikcube/commit/9077bb9fa6ddfe93ebb14bb8feebc8a0ef9b7ee4.patch";
-        sha256 = "sha256-Am9AGKDGMN5z+JJFJKdsBLrHf2neHFovgF/8I5EXLDA=";
-      })
-    ];
-
   nativeBuildInputs = [
     cmake
     pkg-config
diff --git a/pkgs/applications/audio/netease-cloud-music-gtk/default.nix b/pkgs/applications/audio/netease-cloud-music-gtk/default.nix
index 7811125bd2459..524f89a26ac3f 100644
--- a/pkgs/applications/audio/netease-cloud-music-gtk/default.nix
+++ b/pkgs/applications/audio/netease-cloud-music-gtk/default.nix
@@ -1,6 +1,5 @@
 { lib
 , stdenv
-, fetchpatch
 , fetchFromGitHub
 , rustPlatform
 , meson
@@ -22,26 +21,18 @@
 
 stdenv.mkDerivation rec {
   pname = "netease-cloud-music-gtk";
-  version = "2.0.2";
+  version = "2.0.3";
 
   src = fetchFromGitHub {
     owner = "gmg137";
     repo = pname;
     rev = version;
-    hash = "sha256-0pmuzdRQBdUS4ORh3zJQWb/hbhk7SY3P4QMwoy4Mgp8=";
+    hash = "sha256-A3mvf6TZ3+aiWA6rg9G5NMaDKvO0VQzwIM1t0MaTpTc=";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "add-cargo-lock-for-2.0.2.patch";
-      url = "https://github.com/gmg137/netease-cloud-music-gtk/commit/21b5d40d49e661fe7bd35ed10bb8b883ef7fcd9f.patch";
-      hash = "sha256-pSgc+yJQMNyLPYUMc1Kp/Kr+++2tH8srIM5PgVeoZ+E=";
-    })
-  ];
-
   cargoDeps = rustPlatform.fetchCargoTarball {
-    inherit src patches;
-    hash = "sha256-7Z5i5Xqtk4ZbBXSVYg1e05ENa2swC88Ctd2paE60Yyo=";
+    inherit src;
+    hash = "sha256-Y7rZTbg0zd/eoo6E8TmV8JJPs1N0bLlBjvB6W07Kelg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/audio/pianobooster/default.nix b/pkgs/applications/audio/pianobooster/default.nix
index 2c58ecc5dcbb3..7d62aa61d6b0b 100644
--- a/pkgs/applications/audio/pianobooster/default.nix
+++ b/pkgs/applications/audio/pianobooster/default.nix
@@ -1,29 +1,69 @@
-{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, qttools
-, alsa-lib, ftgl, libGLU, libjack2, qtbase, rtmidi, wrapQtAppsHook
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, pkg-config
+, qttools
+, alsa-lib
+, ftgl
+, libGLU
+, qtbase
+, rtmidi
+, libjack2
+, fluidsynth
+, soundfont-fluid
+, unzip
+, wrapQtAppsHook
 }:
 
 stdenv.mkDerivation rec {
   pname = "pianobooster";
-  version = "0.7.2b";
+  version = "1.0.0";
 
   src = fetchFromGitHub {
-    owner = "captnfab";
+    owner = "pianobooster";
     repo = "PianoBooster";
     rev = "v${version}";
-    sha256 = "03xcdnlpsij22ca3i6xj19yqzn3q2ch0d32r73v0c96nm04gvhjj";
+    hash = "sha256-1WOlAm/HXSL6QK0Kd1mnFEZxxpMseTG+6WzgMNWt+RA=";
   };
 
-  nativeBuildInputs = [ cmake pkg-config qttools wrapQtAppsHook ];
+  postPatch = ''
+    substituteInPlace src/Settings.cpp src/GuiMidiSetupDialog.cpp \
+      --replace "/usr/share/soundfonts" "${soundfont-fluid}/share/soundfonts" \
+      --replace "FluidR3_GM.sf2" "FluidR3_GM2-2.sf2"
+  '';
 
-  buildInputs = [ alsa-lib ftgl libGLU libjack2 qtbase rtmidi ];
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    qttools
+    wrapQtAppsHook
+  ];
+
+  buildInputs = [
+    alsa-lib
+    ftgl
+    libGLU
+    qtbase
+    rtmidi
+    libjack2
+    fluidsynth
+  ];
 
   cmakeFlags = [
     "-DOpenGL_GL_PREFERENCE=GLVND"
+    "-DUSE_JACK=ON"
   ];
 
+  postInstall = ''
+    qtWrapperArgs+=(
+      --prefix PATH : "${lib.makeBinPath [ unzip ]}"
+    )
+  '';
+
   meta = with lib; {
     description = "A MIDI file player that teaches you how to play the piano";
-    homepage = "https://github.com/captnfab/PianoBooster";
+    homepage = "https://github.com/pianobooster/PianoBooster";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ goibhniu orivej ];
diff --git a/pkgs/applications/audio/pt2-clone/default.nix b/pkgs/applications/audio/pt2-clone/default.nix
index b7364a3f30412..bbabcb45187ea 100644
--- a/pkgs/applications/audio/pt2-clone/default.nix
+++ b/pkgs/applications/audio/pt2-clone/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "pt2-clone";
-  version = "1.53";
+  version = "1.53.1";
 
   src = fetchFromGitHub {
     owner = "8bitbubsy";
     repo = "pt2-clone";
     rev = "v${version}";
-    sha256 = "sha256-zW/uNJr2cip1JbFLKyB6TD75p1v9/dQu9kmtKXckc2c=";
+    sha256 = "sha256-7qBvv4D86uX8oqqJ+UDI+fbaG5g1+Zg1otuU9lqyTdo=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/audio/qmmp/default.nix b/pkgs/applications/audio/qmmp/default.nix
index bed02f77e7b24..6eea4562de993 100644
--- a/pkgs/applications/audio/qmmp/default.nix
+++ b/pkgs/applications/audio/qmmp/default.nix
@@ -1,4 +1,4 @@
-{ lib, mkDerivation, fetchurl, cmake, pkg-config, xlibsWrapper
+{ lib, mkDerivation, fetchurl, cmake, pkg-config
 , qtbase, qttools, qtmultimedia, qtx11extras
 # transports
 , curl, libmms
@@ -40,7 +40,7 @@ mkDerivation rec {
   nativeBuildInputs = [ cmake pkg-config ];
   buildInputs =
     [ # basic requirements
-      qtbase qttools qtmultimedia qtx11extras xlibsWrapper
+      qtbase qttools qtmultimedia qtx11extras
       # transports
       curl libmms
       # input plugins
diff --git a/pkgs/applications/audio/radiotray-ng/default.nix b/pkgs/applications/audio/radiotray-ng/default.nix
index dd3ba17e63340..178b637978353 100644
--- a/pkgs/applications/audio/radiotray-ng/default.nix
+++ b/pkgs/applications/audio/radiotray-ng/default.nix
@@ -93,6 +93,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/ebruck/radiotray-ng";
     license = licenses.gpl3;
     maintainers = with maintainers; [ dtzWill ];
-    platforms = platforms.all;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/audio/tagger/default.nix b/pkgs/applications/audio/tagger/default.nix
index 97751d6107c13..992934cd8ccd0 100644
--- a/pkgs/applications/audio/tagger/default.nix
+++ b/pkgs/applications/audio/tagger/default.nix
@@ -18,13 +18,13 @@
 
 stdenv.mkDerivation rec {
   pname = "tagger";
-  version = "2022.10.4";
+  version = "2022.10.6";
 
   src = fetchFromGitHub {
     owner = "nlogozzo";
     repo = "NickvisionTagger";
     rev = version;
-    hash = "sha256-I4jhlz/dmS24nszP755xlYMF6aLhmAxlv6Td4xFbr3U=";
+    hash = "sha256-eo7H2pNtSChUAqjO0ocFjsGt4I0e8ZOHbZ/GoZgUva8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/audio/tenacity/default.nix b/pkgs/applications/audio/tenacity/default.nix
index 89051e70b5193..748ce090c776c 100644
--- a/pkgs/applications/audio/tenacity/default.nix
+++ b/pkgs/applications/audio/tenacity/default.nix
@@ -2,7 +2,8 @@
 , lib
 , fetchFromSourcehut
 , cmake
-, wxGTK
+, wxGTK31
+, gtk3
 , pkg-config
 , python3
 , gettext
@@ -123,8 +124,8 @@ stdenv.mkDerivation rec {
     sratom
     suil
     twolame
-    wxGTK
-    wxGTK.gtk
+    wxGTK31
+    gtk3
   ] ++ lib.optionals stdenv.isLinux [
     at-spi2-core
     dbus
diff --git a/pkgs/applications/backup/proxmox-backup-client/Cargo.lock b/pkgs/applications/backup/proxmox-backup-client/Cargo.lock
new file mode 100644
index 0000000000000..213f1ed497250
--- /dev/null
+++ b/pkgs/applications/backup/proxmox-backup-client/Cargo.lock
@@ -0,0 +1,1910 @@
+# This file is automatically @generated by Cargo.
+# It is not intended for manual editing.
+version = 3
+
+[[package]]
+name = "adler"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
+
+[[package]]
+name = "aho-corasick"
+version = "0.7.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "ansi_term"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
+dependencies = [
+ "winapi",
+]
+
+[[package]]
+name = "anyhow"
+version = "1.0.63"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a26fa4d7e3f2eebadf743988fc8aec9fa9a9e82611acafd77c1462ed6262440a"
+
+[[package]]
+name = "arrayvec"
+version = "0.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b"
+
+[[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 = "base64"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd"
+
+[[package]]
+name = "bindgen"
+version = "0.57.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fd4865004a46a0aafb2a0a5eb19d3c9fc46ee5f063a6cfc605c69ac9ecf5263d"
+dependencies = [
+ "bitflags",
+ "cexpr",
+ "clang-sys",
+ "clap",
+ "env_logger",
+ "lazy_static",
+ "lazycell",
+ "log",
+ "peeking_take_while",
+ "proc-macro2 1.0.43",
+ "quote 1.0.21",
+ "regex",
+ "rustc-hash",
+ "shlex",
+ "which",
+]
+
+[[package]]
+name = "bitflags"
+version = "1.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+
+[[package]]
+name = "bumpalo"
+version = "3.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c1ad822118d20d2c234f427000d5acc36eabe1e29a348c89b63dd60b13f28e5d"
+
+[[package]]
+name = "bytes"
+version = "1.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ec8a7b6a70fde80372154c65702f00a0f56f3e1c36abbc6c440484be248856db"
+
+[[package]]
+name = "cc"
+version = "1.0.73"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11"
+dependencies = [
+ "jobserver",
+]
+
+[[package]]
+name = "cexpr"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f4aedb84272dbe89af497cf81375129abda4fc0a9e7c5d317498c15cc30c0d27"
+dependencies = [
+ "nom",
+]
+
+[[package]]
+name = "cfg-if"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+[[package]]
+name = "clang-sys"
+version = "1.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5a050e2153c5be08febd6734e29298e844fdb0fa21aeddd63b4eb7baa106c69b"
+dependencies = [
+ "glob",
+ "libc",
+ "libloading",
+]
+
+[[package]]
+name = "clap"
+version = "2.34.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
+dependencies = [
+ "ansi_term",
+ "atty",
+ "bitflags",
+ "strsim",
+ "textwrap",
+ "unicode-width",
+ "vec_map",
+]
+
+[[package]]
+name = "crc32fast"
+version = "1.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
+dependencies = [
+ "cfg-if",
+]
+
+[[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-next"
+version = "2.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1"
+dependencies = [
+ "cfg-if",
+ "dirs-sys-next",
+]
+
+[[package]]
+name = "dirs-sys"
+version = "0.3.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6"
+dependencies = [
+ "libc",
+ "redox_users",
+ "winapi",
+]
+
+[[package]]
+name = "dirs-sys-next"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d"
+dependencies = [
+ "libc",
+ "redox_users",
+ "winapi",
+]
+
+[[package]]
+name = "endian_trait"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "77c844962d33db56fe7024846eeb8db92c79ccb68d3752a0ee37c261ac79fd46"
+dependencies = [
+ "endian_trait_derive",
+]
+
+[[package]]
+name = "endian_trait_derive"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a03aff727e0a6b907127d45940d06dec1ca6c0c3df1fdfa647780c32d2b61ca0"
+dependencies = [
+ "quote 0.4.2",
+ "syn 0.12.15",
+]
+
+[[package]]
+name = "env_logger"
+version = "0.8.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a19187fea3ac7e84da7dacf48de0c45d63c6a76f9490dae389aead16c243fce3"
+dependencies = [
+ "atty",
+ "humantime",
+ "log",
+ "regex",
+ "termcolor",
+]
+
+[[package]]
+name = "filetime"
+version = "0.2.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e94a7bbaa59354bc20dd75b67f23e2797b4490e9d6928203fb105c79e448c86c"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "redox_syscall",
+ "windows-sys",
+]
+
+[[package]]
+name = "flate2"
+version = "1.0.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f82b0f4c27ad9f8bfd1f3208d882da2b09c301bc1c828fd3a00d0216d2fbbff6"
+dependencies = [
+ "crc32fast",
+ "miniz_oxide",
+]
+
+[[package]]
+name = "fnv"
+version = "1.0.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
+
+[[package]]
+name = "foreign-types"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
+dependencies = [
+ "foreign-types-shared",
+]
+
+[[package]]
+name = "foreign-types-shared"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+
+[[package]]
+name = "form_urlencoded"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191"
+dependencies = [
+ "matches",
+ "percent-encoding",
+]
+
+[[package]]
+name = "fs2"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213"
+dependencies = [
+ "libc",
+ "winapi",
+]
+
+[[package]]
+name = "futures"
+version = "0.3.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f21eda599937fba36daeb58a22e8f5cee2d14c4a17b5b7739c7c8e5e3b8230c"
+dependencies = [
+ "futures-channel",
+ "futures-core",
+ "futures-executor",
+ "futures-io",
+ "futures-sink",
+ "futures-task",
+ "futures-util",
+]
+
+[[package]]
+name = "futures-channel"
+version = "0.3.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "30bdd20c28fadd505d0fd6712cdfcb0d4b5648baf45faef7f852afb2399bb050"
+dependencies = [
+ "futures-core",
+ "futures-sink",
+]
+
+[[package]]
+name = "futures-core"
+version = "0.3.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4e5aa3de05362c3fb88de6531e6296e85cde7739cccad4b9dfeeb7f6ebce56bf"
+
+[[package]]
+name = "futures-executor"
+version = "0.3.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ff63c23854bee61b6e9cd331d523909f238fc7636290b96826e9cfa5faa00ab"
+dependencies = [
+ "futures-core",
+ "futures-task",
+ "futures-util",
+]
+
+[[package]]
+name = "futures-io"
+version = "0.3.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bbf4d2a7a308fd4578637c0b17c7e1c7ba127b8f6ba00b29f717e9655d85eb68"
+
+[[package]]
+name = "futures-macro"
+version = "0.3.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "42cd15d1c7456c04dbdf7e88bcd69760d74f3a798d6444e16974b505b0e62f17"
+dependencies = [
+ "proc-macro2 1.0.43",
+ "quote 1.0.21",
+ "syn 1.0.99",
+]
+
+[[package]]
+name = "futures-sink"
+version = "0.3.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "21b20ba5a92e727ba30e72834706623d94ac93a725410b6a6b6fbc1b07f7ba56"
+
+[[package]]
+name = "futures-task"
+version = "0.3.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a6508c467c73851293f390476d4491cf4d227dbabcd4170f3bb6044959b294f1"
+
+[[package]]
+name = "futures-util"
+version = "0.3.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "44fb6cb1be61cc1d2e43b262516aafcf63b241cffdb1d3fa115f91d9c7b09c90"
+dependencies = [
+ "futures-channel",
+ "futures-core",
+ "futures-io",
+ "futures-macro",
+ "futures-sink",
+ "futures-task",
+ "memchr",
+ "pin-project-lite",
+ "pin-utils",
+ "slab",
+]
+
+[[package]]
+name = "getrandom"
+version = "0.2.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4eb1a864a501629691edf6c15a593b7a51eebaa1e8468e9ddc623de7c9b58ec6"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "wasi",
+]
+
+[[package]]
+name = "glob"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
+
+[[package]]
+name = "h2"
+version = "0.3.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5ca32592cf21ac7ccab1825cd87f6c9b3d9022c44d086172ed0966bec8af30be"
+dependencies = [
+ "bytes",
+ "fnv",
+ "futures-core",
+ "futures-sink",
+ "futures-util",
+ "http",
+ "indexmap",
+ "slab",
+ "tokio",
+ "tokio-util 0.7.3",
+ "tracing",
+]
+
+[[package]]
+name = "hashbrown"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
+
+[[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 = "http"
+version = "0.2.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "75f43d41e26995c17e71ee126451dd3941010b0514a81a9d11f3b341debc2399"
+dependencies = [
+ "bytes",
+ "fnv",
+ "itoa",
+]
+
+[[package]]
+name = "http-body"
+version = "0.4.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1"
+dependencies = [
+ "bytes",
+ "http",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "httparse"
+version = "1.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904"
+
+[[package]]
+name = "httpdate"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421"
+
+[[package]]
+name = "humantime"
+version = "2.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
+
+[[package]]
+name = "hyper"
+version = "0.14.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "02c929dc5c39e335a03c405292728118860721b10190d98c2a0f0efd5baafbac"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-core",
+ "futures-util",
+ "h2",
+ "http",
+ "http-body",
+ "httparse",
+ "httpdate",
+ "itoa",
+ "pin-project-lite",
+ "socket2",
+ "tokio",
+ "tower-service",
+ "tracing",
+ "want",
+]
+
+[[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 = "indexmap"
+version = "1.9.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "10a35a97730320ffe8e2d410b5d3b69279b98d2c14bdb8b70ea89ecf7888d41e"
+dependencies = [
+ "autocfg",
+ "hashbrown",
+]
+
+[[package]]
+name = "itoa"
+version = "1.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6c8af84674fe1f223a982c933a0ee1086ac4d4052aa0fb8060c12c6ad838e754"
+
+[[package]]
+name = "jobserver"
+version = "0.1.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "af25a77299a7f711a01975c35a6a424eb6862092cc2d6c72c4ed6cbc56dfc1fa"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "js-sys"
+version = "0.3.59"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "258451ab10b34f8af53416d1fdab72c22e805f0c92a1136d59470ec0b11138b2"
+dependencies = [
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "lazy_static"
+version = "1.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+
+[[package]]
+name = "lazycell"
+version = "1.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
+
+[[package]]
+name = "lexical-core"
+version = "0.7.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6607c62aa161d23d17a9072cc5da0be67cdfc89d3afb1e8d9c842bebc2525ffe"
+dependencies = [
+ "arrayvec",
+ "bitflags",
+ "cfg-if",
+ "ryu",
+ "static_assertions",
+]
+
+[[package]]
+name = "libc"
+version = "0.2.132"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8371e4e5341c3a96db127eb2465ac681ced4c433e01dd0e938adbef26ba93ba5"
+
+[[package]]
+name = "libloading"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "efbc0f03f9a775e9f6aed295c6a1ba2253c5757a9e03d55c6caa46a681abcddd"
+dependencies = [
+ "cfg-if",
+ "winapi",
+]
+
+[[package]]
+name = "log"
+version = "0.4.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
+dependencies = [
+ "cfg-if",
+]
+
+[[package]]
+name = "matches"
+version = "0.1.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f"
+
+[[package]]
+name = "memchr"
+version = "2.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
+
+[[package]]
+name = "miniz_oxide"
+version = "0.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6f5c75688da582b8ffc1f1799e9db273f32133c49e048f614d22ec3256773ccc"
+dependencies = [
+ "adler",
+]
+
+[[package]]
+name = "mio"
+version = "0.8.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "57ee1c23c7c63b0c9250c339ffdc69255f110b298b901b9f6c82547b7b87caaf"
+dependencies = [
+ "libc",
+ "log",
+ "wasi",
+ "windows-sys",
+]
+
+[[package]]
+name = "nix"
+version = "0.19.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b2ccba0cfe4fdf15982d1674c69b1fd80bad427d293849982668dfe454bd61f2"
+dependencies = [
+ "bitflags",
+ "cc",
+ "cfg-if",
+ "libc",
+]
+
+[[package]]
+name = "nom"
+version = "5.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ffb4262d26ed83a1c0a33a38fe2bb15797329c85770da05e6b828ddb782627af"
+dependencies = [
+ "lexical-core",
+ "memchr",
+ "version_check",
+]
+
+[[package]]
+name = "num_cpus"
+version = "1.13.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1"
+dependencies = [
+ "hermit-abi",
+ "libc",
+]
+
+[[package]]
+name = "once_cell"
+version = "1.13.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "074864da206b4973b84eb91683020dbefd6a8c3f0f38e054d93954e891935e4e"
+
+[[package]]
+name = "openssl"
+version = "0.10.41"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "618febf65336490dfcf20b73f885f5651a0c89c64c2d4a8c3662585a70bf5bd0"
+dependencies = [
+ "bitflags",
+ "cfg-if",
+ "foreign-types",
+ "libc",
+ "once_cell",
+ "openssl-macros",
+ "openssl-sys",
+]
+
+[[package]]
+name = "openssl-macros"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b501e44f11665960c7e7fcf062c7d96a14ade4aa98116c004b2e37b5be7d736c"
+dependencies = [
+ "proc-macro2 1.0.43",
+ "quote 1.0.21",
+ "syn 1.0.99",
+]
+
+[[package]]
+name = "openssl-sys"
+version = "0.9.75"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e5f9bd0c2710541a3cda73d6f9ac4f1b240de4ae261065d309dbe73d9dceb42f"
+dependencies = [
+ "autocfg",
+ "cc",
+ "libc",
+ "pkg-config",
+ "vcpkg",
+]
+
+[[package]]
+name = "pathpatterns"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f6e0644c02bcf32e41bcfd11d29d67c31480910717dc15ad59f968c736c0a99a"
+dependencies = [
+ "bitflags",
+ "libc",
+]
+
+[[package]]
+name = "pbs-api-types"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "hex",
+ "lazy_static",
+ "percent-encoding",
+ "proxmox-lang",
+ "proxmox-schema",
+ "proxmox-serde",
+ "proxmox-time",
+ "proxmox-uuid",
+ "regex",
+ "serde",
+ "serde_plain",
+]
+
+[[package]]
+name = "pbs-buildcfg"
+version = "2.2.1"
+
+[[package]]
+name = "pbs-client"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "bitflags",
+ "bytes",
+ "futures",
+ "h2",
+ "hex",
+ "http",
+ "hyper",
+ "lazy_static",
+ "libc",
+ "nix",
+ "openssl",
+ "pathpatterns",
+ "pbs-api-types",
+ "pbs-buildcfg",
+ "pbs-datastore",
+ "pbs-tools",
+ "percent-encoding",
+ "pin-project-lite",
+ "proxmox-async",
+ "proxmox-compression",
+ "proxmox-fuse",
+ "proxmox-http",
+ "proxmox-io",
+ "proxmox-lang",
+ "proxmox-router",
+ "proxmox-schema",
+ "proxmox-sys",
+ "proxmox-time",
+ "pxar",
+ "regex",
+ "rustyline",
+ "serde",
+ "serde_json",
+ "tar",
+ "tokio",
+ "tokio-stream",
+ "tower-service",
+ "xdg",
+]
+
+[[package]]
+name = "pbs-config"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "hex",
+ "lazy_static",
+ "libc",
+ "nix",
+ "once_cell",
+ "openssl",
+ "pbs-api-types",
+ "pbs-buildcfg",
+ "pbs-tools",
+ "proxmox-lang",
+ "proxmox-router",
+ "proxmox-schema",
+ "proxmox-section-config",
+ "proxmox-serde",
+ "proxmox-shared-memory",
+ "proxmox-sys",
+ "proxmox-time",
+ "regex",
+ "serde",
+ "serde_json",
+]
+
+[[package]]
+name = "pbs-datastore"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "base64",
+ "crc32fast",
+ "endian_trait",
+ "futures",
+ "hex",
+ "lazy_static",
+ "libc",
+ "log",
+ "nix",
+ "openssl",
+ "pathpatterns",
+ "pbs-api-types",
+ "pbs-buildcfg",
+ "pbs-config",
+ "pbs-tools",
+ "proxmox-borrow",
+ "proxmox-io",
+ "proxmox-lang",
+ "proxmox-schema",
+ "proxmox-sys",
+ "proxmox-time",
+ "proxmox-uuid",
+ "pxar",
+ "serde",
+ "serde_json",
+ "tokio",
+ "walkdir",
+ "zstd",
+]
+
+[[package]]
+name = "pbs-fuse-loop"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "futures",
+ "lazy_static",
+ "libc",
+ "nix",
+ "proxmox-fuse",
+ "proxmox-sys",
+ "proxmox-time",
+ "regex",
+ "tokio",
+]
+
+[[package]]
+name = "pbs-tools"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "base64",
+ "bytes",
+ "crc32fast",
+ "endian_trait",
+ "flate2",
+ "foreign-types",
+ "futures",
+ "hex",
+ "lazy_static",
+ "libc",
+ "log",
+ "nix",
+ "nom",
+ "openssl",
+ "pbs-api-types",
+ "pbs-buildcfg",
+ "percent-encoding",
+ "proxmox-async",
+ "proxmox-borrow",
+ "proxmox-io",
+ "proxmox-lang",
+ "proxmox-sys",
+ "proxmox-time",
+ "regex",
+ "serde",
+ "serde_json",
+ "tokio",
+ "url",
+ "walkdir",
+ "zstd",
+]
+
+[[package]]
+name = "peeking_take_while"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
+
+[[package]]
+name = "percent-encoding"
+version = "2.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
+
+[[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.25"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae"
+
+[[package]]
+name = "proc-macro2"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cd07deb3c6d1d9ff827999c7f9b04cdfd66b1b17ae508e14fe47b620f2282ae0"
+dependencies = [
+ "unicode-xid",
+]
+
+[[package]]
+name = "proc-macro2"
+version = "1.0.43"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0a2ca2c61bc9f3d74d2886294ab7b9853abd9c1ad903a3ac7815c58989bb7bab"
+dependencies = [
+ "unicode-ident",
+]
+
+[[package]]
+name = "proxmox-api-macro"
+version = "1.0.2"
+dependencies = [
+ "anyhow",
+ "proc-macro2 1.0.43",
+ "quote 1.0.21",
+ "syn 1.0.99",
+]
+
+[[package]]
+name = "proxmox-async"
+version = "0.4.1"
+dependencies = [
+ "anyhow",
+ "futures",
+ "lazy_static",
+ "pin-utils",
+ "proxmox-io",
+ "proxmox-lang",
+ "tokio",
+]
+
+[[package]]
+name = "proxmox-backup"
+version = "2.2.1"
+
+[[package]]
+name = "proxmox-backup-client"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "futures",
+ "hyper",
+ "libc",
+ "nix",
+ "openssl",
+ "pathpatterns",
+ "pbs-api-types",
+ "pbs-buildcfg",
+ "pbs-client",
+ "pbs-config",
+ "pbs-datastore",
+ "pbs-fuse-loop",
+ "pbs-tools",
+ "proxmox-async",
+ "proxmox-io",
+ "proxmox-router",
+ "proxmox-schema",
+ "proxmox-sys",
+ "proxmox-time",
+ "pxar",
+ "serde",
+ "serde_json",
+ "tokio",
+ "tokio-stream",
+ "tokio-util 0.6.10",
+ "xdg",
+ "zstd",
+]
+
+[[package]]
+name = "proxmox-borrow"
+version = "1.0.1"
+
+[[package]]
+name = "proxmox-compression"
+version = "0.1.1"
+dependencies = [
+ "anyhow",
+ "bytes",
+ "crc32fast",
+ "endian_trait",
+ "flate2",
+ "futures",
+ "proxmox-io",
+ "proxmox-lang",
+ "proxmox-time",
+ "tar",
+ "tokio",
+ "walkdir",
+ "zstd",
+]
+
+[[package]]
+name = "proxmox-fuse"
+version = "0.1.3"
+dependencies = [
+ "anyhow",
+ "futures",
+ "libc",
+ "tokio",
+ "tokio-stream",
+]
+
+[[package]]
+name = "proxmox-http"
+version = "0.6.1"
+dependencies = [
+ "anyhow",
+ "base64",
+ "futures",
+ "http",
+ "hyper",
+ "openssl",
+ "proxmox-io",
+ "proxmox-lang",
+ "proxmox-sys",
+ "tokio",
+ "tokio-openssl",
+]
+
+[[package]]
+name = "proxmox-io"
+version = "1.0.1"
+dependencies = [
+ "endian_trait",
+ "tokio",
+]
+
+[[package]]
+name = "proxmox-lang"
+version = "1.1.0"
+
+[[package]]
+name = "proxmox-router"
+version = "1.2.2"
+dependencies = [
+ "anyhow",
+ "http",
+ "hyper",
+ "libc",
+ "nix",
+ "percent-encoding",
+ "proxmox-async",
+ "proxmox-lang",
+ "proxmox-schema",
+ "rustyline",
+ "serde",
+ "serde_json",
+ "tokio",
+ "unicode-width",
+]
+
+[[package]]
+name = "proxmox-schema"
+version = "1.3.1"
+dependencies = [
+ "anyhow",
+ "lazy_static",
+ "proxmox-api-macro",
+ "regex",
+ "serde",
+ "serde_json",
+ "textwrap",
+]
+
+[[package]]
+name = "proxmox-section-config"
+version = "1.0.0"
+dependencies = [
+ "anyhow",
+ "hex",
+ "proxmox-lang",
+ "proxmox-schema",
+ "serde",
+ "serde_json",
+]
+
+[[package]]
+name = "proxmox-serde"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "base64",
+ "proxmox-time",
+ "serde",
+ "serde_json",
+]
+
+[[package]]
+name = "proxmox-shared-memory"
+version = "0.2.0"
+dependencies = [
+ "anyhow",
+ "libc",
+ "nix",
+ "proxmox-sys",
+]
+
+[[package]]
+name = "proxmox-sortable-macro"
+version = "0.1.2"
+dependencies = [
+ "proc-macro2 1.0.43",
+ "quote 1.0.21",
+ "syn 1.0.99",
+]
+
+[[package]]
+name = "proxmox-sys"
+version = "0.2.2"
+dependencies = [
+ "anyhow",
+ "base64",
+ "lazy_static",
+ "libc",
+ "log",
+ "nix",
+ "proxmox-borrow",
+ "proxmox-io",
+ "proxmox-lang",
+ "proxmox-sortable-macro",
+ "proxmox-time",
+ "regex",
+ "serde",
+ "serde_json",
+ "zstd",
+]
+
+[[package]]
+name = "proxmox-time"
+version = "1.1.2"
+dependencies = [
+ "anyhow",
+ "bitflags",
+ "js-sys",
+ "lazy_static",
+ "libc",
+ "nom",
+]
+
+[[package]]
+name = "proxmox-uuid"
+version = "1.0.1"
+dependencies = [
+ "js-sys",
+ "libc",
+ "serde",
+]
+
+[[package]]
+name = "pxar"
+version = "0.10.1"
+dependencies = [
+ "bitflags",
+ "endian_trait",
+ "libc",
+ "siphasher",
+ "tokio",
+]
+
+[[package]]
+name = "pxar-bin"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "futures",
+ "nix",
+ "pathpatterns",
+ "pbs-client",
+ "pbs-tools",
+ "proxmox-async",
+ "proxmox-router",
+ "proxmox-schema",
+ "proxmox-sys",
+ "pxar",
+ "serde_json",
+ "tokio",
+]
+
+[[package]]
+name = "quote"
+version = "0.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1eca14c727ad12702eb4b6bfb5a232287dcf8385cb8ca83a3eeaf6519c44c408"
+dependencies = [
+ "proc-macro2 0.2.3",
+]
+
+[[package]]
+name = "quote"
+version = "1.0.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179"
+dependencies = [
+ "proc-macro2 1.0.43",
+]
+
+[[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",
+ "redox_syscall",
+ "thiserror",
+]
+
+[[package]]
+name = "regex"
+version = "1.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4c4eb3267174b8c6c2f654116623910a0fef09c4753f8dd83db29c48a0df988b"
+dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-syntax",
+]
+
+[[package]]
+name = "regex-syntax"
+version = "0.6.27"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244"
+
+[[package]]
+name = "rustc-hash"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
+
+[[package]]
+name = "rustyline"
+version = "7.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8227301bfc717136f0ecbd3d064ba8199e44497a0bdd46bb01ede4387cfd2cec"
+dependencies = [
+ "bitflags",
+ "cfg-if",
+ "dirs-next",
+ "fs2",
+ "libc",
+ "log",
+ "memchr",
+ "nix",
+ "scopeguard",
+ "unicode-segmentation",
+ "unicode-width",
+ "utf8parse",
+ "winapi",
+]
+
+[[package]]
+name = "ryu"
+version = "1.0.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4501abdff3ae82a1c1b477a17252eb69cee9e66eb915c1abaa4f44d873df9f09"
+
+[[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 = "serde"
+version = "1.0.144"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0f747710de3dcd43b88c9168773254e809d8ddbdf9653b84e2554ab219f17860"
+dependencies = [
+ "serde_derive",
+]
+
+[[package]]
+name = "serde_derive"
+version = "1.0.144"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "94ed3a816fb1d101812f83e789f888322c34e291f894f19590dc310963e87a00"
+dependencies = [
+ "proc-macro2 1.0.43",
+ "quote 1.0.21",
+ "syn 1.0.99",
+]
+
+[[package]]
+name = "serde_json"
+version = "1.0.85"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e55a28e3aaef9d5ce0506d0a14dbba8054ddc7e499ef522dd8b26859ec9d4a44"
+dependencies = [
+ "itoa",
+ "ryu",
+ "serde",
+]
+
+[[package]]
+name = "serde_plain"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "95455e7e29fada2052e72170af226fbe368a4ca33dee847875325d9fdb133858"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "shlex"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7fdf1b9db47230893d76faad238fd6097fd6d6a9245cd7a4d90dbd639536bbd2"
+
+[[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 = "siphasher"
+version = "0.3.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7bd3e3206899af3f8b12af284fafc038cc1dc2b41d1b89dd17297221c5d225de"
+
+[[package]]
+name = "slab"
+version = "0.4.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4614a76b2a8be0058caa9dbbaf66d988527d86d003c11a94fbd335d7661edcef"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
+name = "socket2"
+version = "0.4.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "02e2d2db9033d13a1567121ddd7a095ee144db4e1ca1b1bda3419bc0da294ebd"
+dependencies = [
+ "libc",
+ "winapi",
+]
+
+[[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.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
+
+[[package]]
+name = "syn"
+version = "0.12.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c97c05b8ebc34ddd6b967994d5c6e9852fa92f8b82b3858c39451f97346dcce5"
+dependencies = [
+ "proc-macro2 0.2.3",
+ "quote 0.4.2",
+ "unicode-xid",
+]
+
+[[package]]
+name = "syn"
+version = "1.0.99"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "58dbef6ec655055e20b86b15a8cc6d439cca19b667537ac6a1369572d151ab13"
+dependencies = [
+ "proc-macro2 1.0.43",
+ "quote 1.0.21",
+ "unicode-ident",
+]
+
+[[package]]
+name = "tar"
+version = "0.4.38"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4b55807c0344e1e6c04d7c965f5289c39a8d94ae23ed5c0b57aabac549f871c6"
+dependencies = [
+ "filetime",
+ "libc",
+ "xattr",
+]
+
+[[package]]
+name = "termcolor"
+version = "1.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755"
+dependencies = [
+ "winapi-util",
+]
+
+[[package]]
+name = "textwrap"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
+dependencies = [
+ "unicode-width",
+]
+
+[[package]]
+name = "thiserror"
+version = "1.0.33"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3d0a539a918745651435ac7db7a18761589a94cd7e94cd56999f828bf73c8a57"
+dependencies = [
+ "thiserror-impl",
+]
+
+[[package]]
+name = "thiserror-impl"
+version = "1.0.33"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c251e90f708e16c49a16f4917dc2131e75222b72edfa9cb7f7c58ae56aae0c09"
+dependencies = [
+ "proc-macro2 1.0.43",
+ "quote 1.0.21",
+ "syn 1.0.99",
+]
+
+[[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 = "tokio"
+version = "1.20.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a8325f63a7d4774dd041e363b2409ed1c5cbbd0f867795e661df066b2b0a581"
+dependencies = [
+ "autocfg",
+ "bytes",
+ "libc",
+ "memchr",
+ "mio",
+ "num_cpus",
+ "once_cell",
+ "pin-project-lite",
+ "signal-hook-registry",
+ "socket2",
+ "tokio-macros",
+ "winapi",
+]
+
+[[package]]
+name = "tokio-macros"
+version = "1.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9724f9a975fb987ef7a3cd9be0350edcbe130698af5b8f7a631e23d42d052484"
+dependencies = [
+ "proc-macro2 1.0.43",
+ "quote 1.0.21",
+ "syn 1.0.99",
+]
+
+[[package]]
+name = "tokio-openssl"
+version = "0.6.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c08f9ffb7809f1b20c1b398d92acf4cc719874b3b2b2d9ea2f09b4a80350878a"
+dependencies = [
+ "futures-util",
+ "openssl",
+ "openssl-sys",
+ "tokio",
+]
+
+[[package]]
+name = "tokio-stream"
+version = "0.1.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "df54d54117d6fdc4e4fea40fe1e4e566b3505700e148a6827e59b34b0d2600d9"
+dependencies = [
+ "futures-core",
+ "pin-project-lite",
+ "tokio",
+]
+
+[[package]]
+name = "tokio-util"
+version = "0.6.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "36943ee01a6d67977dd3f84a5a1d2efeb4ada3a1ae771cadfaa535d9d9fc6507"
+dependencies = [
+ "bytes",
+ "futures-core",
+ "futures-sink",
+ "log",
+ "pin-project-lite",
+ "tokio",
+]
+
+[[package]]
+name = "tokio-util"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cc463cd8deddc3770d20f9852143d50bf6094e640b485cb2e189a2099085ff45"
+dependencies = [
+ "bytes",
+ "futures-core",
+ "futures-sink",
+ "pin-project-lite",
+ "tokio",
+ "tracing",
+]
+
+[[package]]
+name = "tower-service"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52"
+
+[[package]]
+name = "tracing"
+version = "0.1.36"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2fce9567bd60a67d08a16488756721ba392f24f29006402881e43b19aac64307"
+dependencies = [
+ "cfg-if",
+ "pin-project-lite",
+ "tracing-core",
+]
+
+[[package]]
+name = "tracing-core"
+version = "0.1.29"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5aeea4303076558a00714b823f9ad67d58a3bbda1df83d8827d21193156e22f7"
+dependencies = [
+ "once_cell",
+]
+
+[[package]]
+name = "try-lock"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642"
+
+[[package]]
+name = "unicode-bidi"
+version = "0.3.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992"
+
+[[package]]
+name = "unicode-ident"
+version = "1.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c4f5b37a154999a8f3f98cc23a628d850e154479cd94decf3414696e12e31aaf"
+
+[[package]]
+name = "unicode-normalization"
+version = "0.1.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "854cbdc4f7bc6ae19c820d44abdc3277ac3e1b2b93db20a636825d9322fb60e6"
+dependencies = [
+ "tinyvec",
+]
+
+[[package]]
+name = "unicode-segmentation"
+version = "1.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7e8820f5d777f6224dc4be3632222971ac30164d4a258d595640799554ebfd99"
+
+[[package]]
+name = "unicode-width"
+version = "0.1.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973"
+
+[[package]]
+name = "unicode-xid"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
+
+[[package]]
+name = "url"
+version = "2.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a507c383b2d33b5fc35d1861e77e6b383d158b2da5e14fe51b83dfedf6fd578c"
+dependencies = [
+ "form_urlencoded",
+ "idna",
+ "matches",
+ "percent-encoding",
+]
+
+[[package]]
+name = "utf8parse"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "936e4b492acfd135421d8dca4b1aa80a7bfc26e702ef3af710e0752684df5372"
+
+[[package]]
+name = "vcpkg"
+version = "0.2.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
+
+[[package]]
+name = "vec_map"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
+
+[[package]]
+name = "version_check"
+version = "0.9.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
+
+[[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 = "want"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0"
+dependencies = [
+ "log",
+ "try-lock",
+]
+
+[[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.82"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fc7652e3f6c4706c8d9cd54832c4a4ccb9b5336e2c3bd154d5cccfbf1c1f5f7d"
+dependencies = [
+ "cfg-if",
+ "wasm-bindgen-macro",
+]
+
+[[package]]
+name = "wasm-bindgen-backend"
+version = "0.2.82"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "662cd44805586bd52971b9586b1df85cdbbd9112e4ef4d8f41559c334dc6ac3f"
+dependencies = [
+ "bumpalo",
+ "log",
+ "once_cell",
+ "proc-macro2 1.0.43",
+ "quote 1.0.21",
+ "syn 1.0.99",
+ "wasm-bindgen-shared",
+]
+
+[[package]]
+name = "wasm-bindgen-macro"
+version = "0.2.82"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b260f13d3012071dfb1512849c033b1925038373aea48ced3012c09df952c602"
+dependencies = [
+ "quote 1.0.21",
+ "wasm-bindgen-macro-support",
+]
+
+[[package]]
+name = "wasm-bindgen-macro-support"
+version = "0.2.82"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5be8e654bdd9b79216c2929ab90721aa82faf65c48cdf08bdc4e7f51357b80da"
+dependencies = [
+ "proc-macro2 1.0.43",
+ "quote 1.0.21",
+ "syn 1.0.99",
+ "wasm-bindgen-backend",
+ "wasm-bindgen-shared",
+]
+
+[[package]]
+name = "wasm-bindgen-shared"
+version = "0.2.82"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6598dd0bd3c7d51095ff6531a5b23e02acdc81804e30d8f07afb77b7215a140a"
+
+[[package]]
+name = "which"
+version = "3.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d011071ae14a2f6671d0b74080ae0cd8ebf3a6f8c9589a2cd45f23126fe29724"
+dependencies = [
+ "libc",
+]
+
+[[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.36.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ea04155a16a59f9eab786fe12a4a450e75cdb175f9e0d80da1e17db09f55b8d2"
+dependencies = [
+ "windows_aarch64_msvc",
+ "windows_i686_gnu",
+ "windows_i686_msvc",
+ "windows_x86_64_gnu",
+ "windows_x86_64_msvc",
+]
+
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.36.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9bb8c3fd39ade2d67e9874ac4f3db21f0d710bee00fe7cab16949ec184eeaa47"
+
+[[package]]
+name = "windows_i686_gnu"
+version = "0.36.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "180e6ccf01daf4c426b846dfc66db1fc518f074baa793aa7d9b9aaeffad6a3b6"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.36.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e2e7917148b2812d1eeafaeb22a97e4813dfa60a3f8f78ebe204bcc88f12f024"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.36.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4dcd171b8776c41b97521e5da127a2d86ad280114807d0b2ab1e462bc764d9e1"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.36.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680"
+
+[[package]]
+name = "xattr"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d1526bbe5aaeb5eb06885f4d987bcdfa5e23187055de9b83fe00156a821fabc"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "xdg"
+version = "2.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0c4583db5cbd4c4c0303df2d15af80f0539db703fa1c68802d4cbbd2dd0f88f6"
+dependencies = [
+ "dirs",
+]
+
+[[package]]
+name = "zstd"
+version = "0.6.1+zstd.1.4.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5de55e77f798f205d8561b8fe2ef57abfb6e0ff2abe7fd3c089e119cdb5631a3"
+dependencies = [
+ "zstd-safe",
+]
+
+[[package]]
+name = "zstd-safe"
+version = "3.0.1+zstd.1.4.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1387cabcd938127b30ce78c4bf00b30387dddf704e3f0881dbc4ff62b5566f8c"
+dependencies = [
+ "libc",
+ "zstd-sys",
+]
+
+[[package]]
+name = "zstd-sys"
+version = "1.4.20+zstd.1.4.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ebd5b733d7cf2d9447e2c3e76a5589b4f5e5ae065c22a2bc0b023cbc331b6c8e"
+dependencies = [
+ "bindgen",
+ "cc",
+ "libc",
+]
diff --git a/pkgs/applications/backup/proxmox-backup-client/default.nix b/pkgs/applications/backup/proxmox-backup-client/default.nix
new file mode 100644
index 0000000000000..7c6cf6408a51a
--- /dev/null
+++ b/pkgs/applications/backup/proxmox-backup-client/default.nix
@@ -0,0 +1,70 @@
+{ lib, fetchgit, rustPlatform, pkg-config, openssl, fuse3, libuuid, acl, libxcrypt }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "proxmox-backup-client";
+  version = "2.2.1";
+
+  srcs = [
+    (fetchgit {
+      url = "git://git.proxmox.com/git/proxmox-backup.git";
+      rev = "v${version}";
+      name = pname;
+      hash = "sha256-uOKQe/BzO69f/ggEPoZQ2Rn3quytQrUeH7be19QV3KI=";
+    })
+    (fetchgit {
+      url = "git://git.proxmox.com/git/proxmox.git";
+      rev = "43b4440ef015d846161657490b18cf6ac7600fc4";
+      name = "proxmox";
+      hash = "sha256-05Z+IRRIioFGn+iAYG04DyNsgw9gQrJ6qAArpCwoIb0=";
+    })
+    (fetchgit {
+      url = "git://git.proxmox.com/git/proxmox-fuse.git";
+      rev = "d162ef9039878b871e2aa11b7d9a373ae512e2d1";
+      name = "proxmox-fuse";
+      hash = "sha256-w33ViWpBkCkMAhZVXiOdqnGOn/tddNRgzn71WioTnBU=";
+    })
+    (fetchgit {
+      url = "git://git.proxmox.com/git/pxar.git";
+      rev = "6f3f889e98c5f4e60c3b2c6bce73bd506b548c21";
+      name = "pxar";
+      hash = "sha256-GtNq6+O1xnxuR7b4TTWLFxcsejRyadSlk85H8C+yUGA=";
+    })
+  ];
+
+  sourceRoot = pname;
+
+  cargoPatches = [
+    ./re-route-dependencies.patch
+  ];
+
+  postPatch = ''
+    cp ${./Cargo.lock} Cargo.lock
+    rm .cargo/config
+  '';
+
+  cargoLock = {
+    lockFileContents = builtins.readFile ./Cargo.lock;
+  };
+
+  cargoBuildFlags = [
+    "--package=proxmox-backup-client"
+    "--bin=proxmox-backup-client"
+    "--bin=dump-catalog-shell-cli"
+
+    "--package=pxar-bin"
+    "--bin=pxar"
+  ];
+
+  doCheck = false;
+
+  nativeBuildInputs = [ pkg-config rustPlatform.bindgenHook ];
+  buildInputs = [ openssl fuse3 libuuid acl libxcrypt ];
+
+  meta = with lib; {
+    description = "The command line client for Proxmox Backup Server";
+    homepage = "https://pbs.proxmox.com/docs/backup-client.html";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ cofob ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/backup/proxmox-backup-client/re-route-dependencies.patch b/pkgs/applications/backup/proxmox-backup-client/re-route-dependencies.patch
new file mode 100644
index 0000000000000..a4d053f274e74
--- /dev/null
+++ b/pkgs/applications/backup/proxmox-backup-client/re-route-dependencies.patch
@@ -0,0 +1,148 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Thomas Lamprecht <thomas@lamprecht.org>
+Date: Wed, 18 May 2022 08:41:14 +0200
+Subject: [PATCH] re-route dependencies not available on crates.io to git repos
+
+Signed-off-by: Thomas Lamprecht <thomas@lamprecht.org>
+---
+ Cargo.toml    | 112 +++++++-------------------------------------------
+ 1 file changed, 15 insertions(+), 97 deletions(-)
+
+diff --git a/Cargo.toml b/Cargo.toml
+index 41980292..e7daaad5 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -25,94 +25,12 @@ members = [
+     "pbs-config",
+     "pbs-datastore",
+     "pbs-fuse-loop",
+-    "proxmox-rest-server",
+-    "proxmox-rrd",
+-    "pbs-tape",
+     "pbs-tools",
+ 
+-    "proxmox-backup-banner",
+     "proxmox-backup-client",
+-    "proxmox-file-restore",
+-    "proxmox-restore-daemon",
+     "pxar-bin",
+ ]
+ 
+-[lib]
+-name = "proxmox_backup"
+-path = "src/lib.rs"
+-
+-[dependencies]
+-apt-pkg-native = "0.3.2"
+-base64 = "0.13"
+-bitflags = "1.2.1"
+-bytes = "1.0"
+-cidr = "0.2.1"
+-crc32fast = "1"
+-endian_trait = { version = "0.6", features = ["arrays"] }
+-flate2 = "1.0"
+-anyhow = "1.0"
+-thiserror = "1.0"
+-futures = "0.3"
+-h2 = { version = "0.3", features = [ "stream" ] }
+-handlebars = "3.0"
+-hex = "0.4.3"
+-http = "0.2"
+-hyper = { version = "0.14", features = [ "full" ] }
+-lazy_static = "1.4"
+-libc = "0.2"
+-log = "0.4.17"
+-nix = "0.19.1"
+-num-traits = "0.2"
+-once_cell = "1.3.1"
+-openssl = "0.10.38" # currently patched!
+-pam = "0.7"
+-pam-sys = "0.5"
+-percent-encoding = "2.1"
+-regex = "1.5.5"
+-rustyline = "7"
+-serde = { version = "1.0", features = ["derive"] }
+-serde_json = "1.0"
+-siphasher = "0.3"
+-syslog = "4.0"
+-tokio = { version = "1.6", features = [ "fs", "io-util", "io-std", "macros", "net", "parking_lot", "process", "rt", "rt-multi-thread", "signal", "time" ] }
+-tokio-openssl = "0.6.1"
+-tokio-stream = "0.1.0"
+-tokio-util = { version = "0.6", features = [ "codec", "io" ] }
+-tower-service = "0.3.0"
+-udev = "0.4"
+-url = "2.1"
+-#valgrind_request = { git = "https://github.com/edef1c/libvalgrind_request", version = "1.1.0", optional = true }
+-walkdir = "2"
+-xdg = "2.2"
+-nom = "5.1"
+-crossbeam-channel = "0.5"
+-
+-# Used only by examples currently:
+-zstd = { version = "0.6", features = [ "bindgen" ] }
+-
+-pathpatterns = "0.1.2"
+-pxar = { version = "0.10.1", features = [ "tokio-io" ] }
+-
+-proxmox-http = { version = "0.6.1", features = [ "client", "http-helpers", "websocket" ] }
+-proxmox-io = "1"
+-proxmox-lang = "1.1"
+-proxmox-router = { version = "1.2.2", features = [ "cli" ] }
+-proxmox-schema = { version = "1.3.1", features = [ "api-macro" ] }
+-proxmox-section-config = "1"
+-proxmox-tfa = { version = "2", features = [ "api", "api-types" ] }
+-proxmox-time = "1.1.2"
+-proxmox-uuid = "1"
+-proxmox-serde = "0.1"
+-proxmox-shared-memory = "0.2"
+-proxmox-sys = { version = "0.2", features = [ "sortable-macro" ] }
+-proxmox-compression = "0.1"
+-
+-
+-proxmox-acme-rs = "0.4"
+-proxmox-apt = "0.8.0"
+-proxmox-async = "0.4"
+-proxmox-openid = "0.9.0"
+-
+ pbs-api-types = { path = "pbs-api-types" }
+ pbs-buildcfg = { path = "pbs-buildcfg" }
+ pbs-client = { path = "pbs-client" }
+@@ -126,22 +44,23 @@ pbs-tape = { path = "pbs-tape" }
+ # Local path overrides
+ # NOTE: You must run `cargo update` after changing this for it to take effect!
+ [patch.crates-io]
+-#proxmox = { path = "../proxmox/proxmox" }
+-#proxmox-async = { path = "../proxmox/proxmox-async" }
+-#proxmox-borrow = { path = "../proxmox/proxmox-borrow" }
+-#proxmox-fuse = { path = "../proxmox-fuse" }
+-#proxmox-http = { path = "../proxmox/proxmox-http" }
+-#proxmox-io = { path = "../proxmox/proxmox-io" }
+-#proxmox-lang = { path = "../proxmox/proxmox-lang" }
+-#proxmox-router = { path = "../proxmox/proxmox-router" }
+-#proxmox-schema = { path = "../proxmox/proxmox-schema" }
+-#proxmox-section-config = { path = "../proxmox/proxmox-section-config" }
+-#proxmox-shared-memory = { path = "../proxmox/proxmox-shared-memory" }
+-#proxmox-sys = { path = "../proxmox/proxmox-sys" }
++proxmox-async = { path = "../proxmox/proxmox-async" }
++proxmox-compression = { path = "../proxmox/proxmox-compression" }
++proxmox-borrow = { path = "../proxmox/proxmox-borrow" }
++proxmox-fuse = { path = "../proxmox-fuse" }
++proxmox-http = { path = "../proxmox/proxmox-http" }
++proxmox-io = { path = "../proxmox/proxmox-io" }
++proxmox-lang = { path = "../proxmox/proxmox-lang" }
++proxmox-router = { path = "../proxmox/proxmox-router" }
++proxmox-schema = { path = "../proxmox/proxmox-schema" }
++proxmox-section-config = { path = "../proxmox/proxmox-section-config" }
++proxmox-serde = { path = "../proxmox/proxmox-serde" }
++proxmox-shared-memory = { path = "../proxmox/proxmox-shared-memory" }
++proxmox-sys = { path = "../proxmox/proxmox-sys" }
+ #proxmox-tfa = { path = "../proxmox/proxmox-tfa" }
+-#proxmox-time = { path = "../proxmox/proxmox-time" }
+-#proxmox-uuid = { path = "../proxmox/proxmox-uuid" }
+-#pxar = { path = "../pxar" }
++proxmox-time = { path = "../proxmox/proxmox-time" }
++proxmox-uuid = { path = "../proxmox/proxmox-uuid" }
++pxar = { path = "../pxar" }
+ 
+ [features]
+ default = []
diff --git a/pkgs/applications/backup/timeshift/unwrapped.nix b/pkgs/applications/backup/timeshift/unwrapped.nix
index 61964370b3e2d..81a0cd8b02e12 100644
--- a/pkgs/applications/backup/timeshift/unwrapped.nix
+++ b/pkgs/applications/backup/timeshift/unwrapped.nix
@@ -72,6 +72,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/linuxmint/timeshift";
     license = licenses.gpl3;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ ShamrockLee ];
+    maintainers = with maintainers; [ ShamrockLee bobby285271 ];
   };
 }
diff --git a/pkgs/applications/blockchains/bisq-desktop/default.nix b/pkgs/applications/blockchains/bisq-desktop/default.nix
index 9ac34e61b238b..05542ef4c24eb 100644
--- a/pkgs/applications/blockchains/bisq-desktop/default.nix
+++ b/pkgs/applications/blockchains/bisq-desktop/default.nix
@@ -34,11 +34,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "bisq-desktop";
-  version = "1.9.5";
+  version = "1.9.6";
 
   src = fetchurl {
     url = "https://github.com/bisq-network/bisq/releases/download/v${version}/Bisq-64bit-${version}.deb";
-    sha256 = "1jmhngxyn2yf7k1dn98yr9d20jlvkmskbpzz5kbzci36v2wfmjrp";
+    sha256 = "02j6n693lhfn9x8kaz253xm76zzsdz8h10rkyxnlqiwwbn1wnmsa";
   };
 
   nativeBuildInputs = [ makeWrapper copyDesktopItems imagemagick dpkg zip xz ];
diff --git a/pkgs/applications/blockchains/bitcoin-knots/default.nix b/pkgs/applications/blockchains/bitcoin-knots/default.nix
index 803e27969e7ae..ca998248a6c58 100644
--- a/pkgs/applications/blockchains/bitcoin-knots/default.nix
+++ b/pkgs/applications/blockchains/bitcoin-knots/default.nix
@@ -26,11 +26,11 @@
 with lib;
 stdenv.mkDerivation rec {
   pname = if withGui then "bitcoin-knots" else "bitcoind-knots";
-  version = "22.0.knots20211108";
+  version = "23.0.knots20220529";
 
   src = fetchurl {
-    url = "https://bitcoinknots.org/files/22.x/${version}/guix/bitcoin-${version}.tar.gz";
-    sha256 = "04sqbx4sp3bzwbl8z53nz96n3s0590h327ih0mbgyvfvl3b8pj4i";
+    url = "https://bitcoinknots.org/files/23.x/${version}/bitcoin-${version}.tar.gz";
+    sha256 = "0c6l4bvj4ck8gp5vm4dla3l32swsp6ijk12fyf330wgry4mhqxyi";
   };
 
   nativeBuildInputs =
diff --git a/pkgs/applications/blockchains/groestlcoin/default.nix b/pkgs/applications/blockchains/groestlcoin/default.nix
index 57b6f719505cb..6d5bf0de2e72c 100644
--- a/pkgs/applications/blockchains/groestlcoin/default.nix
+++ b/pkgs/applications/blockchains/groestlcoin/default.nix
@@ -10,7 +10,7 @@
 , wrapQtAppsHook ? null
 , boost
 , libevent
-, miniupnpc_2
+, miniupnpc
 , zeromq
 , zlib
 , db53
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
     ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [ autoSignDarwinBinariesHook ]
     ++ lib.optionals withGui [ wrapQtAppsHook ];
 
-  buildInputs = [ boost libevent miniupnpc_2 zeromq zlib ]
+  buildInputs = [ boost libevent miniupnpc zeromq zlib ]
     ++ lib.optionals withWallet [ db53 sqlite ]
     ++ lib.optionals withGui [ qrencode qtbase qttools ];
 
diff --git a/pkgs/applications/blockchains/ledger-live-desktop/default.nix b/pkgs/applications/blockchains/ledger-live-desktop/default.nix
index 4d2f727193ec0..4f6ae53ec7845 100644
--- a/pkgs/applications/blockchains/ledger-live-desktop/default.nix
+++ b/pkgs/applications/blockchains/ledger-live-desktop/default.nix
@@ -2,11 +2,11 @@
 
 let
   pname = "ledger-live-desktop";
-  version = "2.49.0";
+  version = "2.49.2";
 
   src = fetchurl {
     url = "https://download.live.ledger.com/${pname}-${version}-linux-x86_64.AppImage";
-    hash = "sha256-5HrPeLeMPh6hc1OLZVSPWMSV+ZwjgQyUmFCW+ZyYdCA=";
+    hash = "sha256-8KGZRTJu3uGFyf4vogoC9kDrKegD8Op4Z7gqQK+UFl8=";
   };
 
   appimageContents = appimageTools.extractType2 {
diff --git a/pkgs/applications/blockchains/lnd/default.nix b/pkgs/applications/blockchains/lnd/default.nix
index bb91e141f44ef..a5cc7431246bc 100644
--- a/pkgs/applications/blockchains/lnd/default.nix
+++ b/pkgs/applications/blockchains/lnd/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "lnd";
-  version = "0.15.2-beta";
+  version = "0.15.4-beta";
 
   src = fetchFromGitHub {
     owner = "lightningnetwork";
     repo = "lnd";
     rev = "v${version}";
-    sha256 = "sha256-C7BZ6awY2v5Uvvh12YEosoEQyJoetWzH/1wIQSVjtEk=";
+    sha256 = "sha256-/PKW2Y6+PlWk88pC4DHFi1ZRqMfQzoO9MVLYZrB2UNc=";
   };
 
-  vendorSha256 = "sha256-rCdcPkgrFcDfLfF8wipFws7YTKEgotuVqVIJYLMOxbs=";
+  vendorSha256 = "sha256-bUo0PhtOFhsZfhAXtRJMjfaLrAsOv3ksxsrPOlMNv48=";
 
   subPackages = [ "cmd/lncli" "cmd/lnd" ];
 
diff --git a/pkgs/applications/blockchains/wownero/default.nix b/pkgs/applications/blockchains/wownero/default.nix
index 61945895eef7a..14e17c766dd99 100644
--- a/pkgs/applications/blockchains/wownero/default.nix
+++ b/pkgs/applications/blockchains/wownero/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitea, cmake, boost, miniupnpc_2, openssl, unbound
+{ lib, stdenv, fetchFromGitea, cmake, boost, miniupnpc, openssl, unbound
 , readline, libsodium, rapidjson
 }:
 
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake ];
 
   buildInputs = [
-    boost miniupnpc_2 openssl unbound rapidjson readline libsodium
+    boost miniupnpc openssl unbound rapidjson readline libsodium
   ];
 
   postUnpack = ''
diff --git a/pkgs/applications/blockchains/zcash/default.nix b/pkgs/applications/blockchains/zcash/default.nix
index c4d007f290773..7466ff31d5816 100644
--- a/pkgs/applications/blockchains/zcash/default.nix
+++ b/pkgs/applications/blockchains/zcash/default.nix
@@ -1,17 +1,17 @@
-{ autoreconfHook, boost179, cargo, coreutils, curl, cxx-rs, db62, fetchFromGitHub
-, hexdump, lib, libevent, libsodium, makeWrapper, rust, rustPlatform, pkg-config
-, stdenv, testers, utf8cpp, util-linux, zcash, zeromq
+{ autoreconfHook, boost180, cargo, coreutils, curl, cxx-rs, db62, fetchFromGitHub
+, hexdump, hostPlatform, lib, libevent, libsodium, makeWrapper, rust, rustPlatform
+, pkg-config, Security, stdenv, testers, utf8cpp, util-linux, zcash, zeromq
 }:
 
 rustPlatform.buildRustPackage.override { inherit stdenv; } rec {
   pname = "zcash";
-  version = "5.1.0";
+  version = "5.3.0";
 
   src = fetchFromGitHub {
     owner = "zcash";
     repo  = "zcash";
     rev = "v${version}";
-    sha256 = "sha256-tU6DuWpe8Vlx0qIilAKWuO7WFp1ucbxtvOxoWLA0gdc=";
+    hash = "sha256-mlABKZDYYC3y+KlXQVFqdcm46m8K9tbOCqk4lM4shp8=";
   };
 
   prePatch = lib.optionalString stdenv.isAarch64 ''
@@ -20,15 +20,20 @@ rustPlatform.buildRustPackage.override { inherit stdenv; } rec {
       --replace "linker = \"aarch64-linux-gnu-gcc\"" ""
   '';
 
-  patches = [
-    ./patches/fix-missing-header.patch
-  ];
-
-  cargoSha256 = "sha256-ZWmkveDEENdXRirGmnUWSjtPNJvX0Jpgfxhzk44F7Q0=";
+  cargoHash = "sha256-6uhtOaBsgMw59Dy6yivZYUEWDsYfpInA7VmJrqxDS/4=";
 
   nativeBuildInputs = [ autoreconfHook cargo cxx-rs hexdump makeWrapper pkg-config ];
 
-  buildInputs = [ boost179 db62 libevent libsodium utf8cpp zeromq ];
+  buildInputs = [
+    boost180
+    db62
+    libevent
+    libsodium
+    utf8cpp
+    zeromq
+  ] ++ lib.optionals stdenv.isDarwin [
+    Security
+  ];
 
   # Use the stdenv default phases (./configure; make) instead of the
   # ones from buildRustPackage.
@@ -50,7 +55,7 @@ rustPlatform.buildRustPackage.override { inherit stdenv; } rec {
 
   configureFlags = [
     "--disable-tests"
-    "--with-boost-libdir=${lib.getLib boost179}/lib"
+    "--with-boost-libdir=${lib.getLib boost180}/lib"
     "RUST_TARGET=${rust.toRustTargetSpec stdenv.hostPlatform}"
   ];
 
@@ -75,5 +80,8 @@ rustPlatform.buildRustPackage.override { inherit stdenv; } rec {
     homepage = "https://z.cash/";
     maintainers = with maintainers; [ rht tkerber centromere ];
     license = licenses.mit;
+
+    # https://github.com/zcash/zcash/issues/4405
+    broken = hostPlatform.isAarch64 && hostPlatform.isDarwin;
   };
 }
diff --git a/pkgs/applications/blockchains/zcash/patches/fix-missing-header.patch b/pkgs/applications/blockchains/zcash/patches/fix-missing-header.patch
deleted file mode 100644
index 6850d78ef12bf..0000000000000
--- a/pkgs/applications/blockchains/zcash/patches/fix-missing-header.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/src/uint256.h	2022-07-20 10:07:39.191319302 +0000
-+++ b/src/uint256.h	2022-07-20 10:07:11.809632293 +0000
-@@ -7,6 +7,7 @@
- #ifndef BITCOIN_UINT256_H
- #define BITCOIN_UINT256_H
-
-+#include <array>
- #include <assert.h>
- #include <cstring>
- #include <stdexcept>
diff --git a/pkgs/applications/display-managers/lightdm-slick-greeter/default.nix b/pkgs/applications/display-managers/lightdm-slick-greeter/default.nix
index fe8132fb1b469..fe912d2cc30a6 100644
--- a/pkgs/applications/display-managers/lightdm-slick-greeter/default.nix
+++ b/pkgs/applications/display-managers/lightdm-slick-greeter/default.nix
@@ -104,7 +104,7 @@ stdenv.mkDerivation rec {
     description = "A slick-looking LightDM greeter";
     homepage = "https://github.com/linuxmint/slick-greeter";
     license = licenses.gpl3Only;
-    maintainers = with maintainers; [ water-sucks ];
+    maintainers = with maintainers; [ water-sucks bobby285271 ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/editors/codeblocks/default.nix b/pkgs/applications/editors/codeblocks/default.nix
index 032fd765b27f4..7a1c0af2c6430 100644
--- a/pkgs/applications/editors/codeblocks/default.nix
+++ b/pkgs/applications/editors/codeblocks/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, fetchpatch, pkg-config, file, zip, wxGTK31-gtk3, gtk3
+{ lib, stdenv, fetchurl, fetchpatch, pkg-config, file, zip, wxGTK31, gtk3
 , contribPlugins ? false, hunspell, gamin, boost, wrapGAppsHook
 }:
 
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ pkg-config file zip wrapGAppsHook ];
-  buildInputs = [ wxGTK31-gtk3 gtk3 ]
+  buildInputs = [ wxGTK31 gtk3 ]
     ++ optionals contribPlugins [ hunspell gamin boost ];
   enableParallelBuilding = true;
   patches = [
diff --git a/pkgs/applications/editors/emacs/elisp-packages/emacspeak/default.nix b/pkgs/applications/editors/emacs/elisp-packages/emacspeak/default.nix
index 54805d43b2484..927605676cfdf 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/emacspeak/default.nix
+++ b/pkgs/applications/editors/emacs/elisp-packages/emacspeak/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "emacspeak";
-  version = "54.0";
+  version = "56.0";
 
   src = fetchFromGitHub {
     owner = "tvraman";
     repo = pname;
     rev = version;
-    hash= "sha256-aOZ8PmkASJKETPhXhE9WQXyJS7SPe+d97fK/piqqzqc=";
+    hash= "sha256-juy+nQ7DrG818/uTH6Dv/lrrzu8qzPWwi0sX7JrhHK8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/editors/emacs/elisp-packages/evil-markdown/default.nix b/pkgs/applications/editors/emacs/elisp-packages/evil-markdown/default.nix
index a2605f33778d9..d4079a53dcaa0 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/evil-markdown/default.nix
+++ b/pkgs/applications/editors/emacs/elisp-packages/evil-markdown/default.nix
@@ -2,6 +2,8 @@
 , trivialBuild
 , fetchFromGitHub
 , emacs
+, evil
+, markdown-mode
 }:
 
 trivialBuild rec {
@@ -15,11 +17,9 @@ trivialBuild rec {
     hash = "sha256-HBBuZ1VWIn6kwK5CtGIvHM1+9eiNiKPH0GUsyvpUVN8=";
   };
 
-  buildInputs = [
-    emacs
-  ] ++ propagatedUserEnvPkgs;
+  buildInputs = propagatedUserEnvPkgs;
 
-  propagatedUserEnvPkgs = with emacs.pkgs; [
+  propagatedUserEnvPkgs = [
     evil
     markdown-mode
   ];
diff --git a/pkgs/applications/editors/emacs/elisp-packages/idris2-mode/default.nix b/pkgs/applications/editors/emacs/elisp-packages/idris2-mode/default.nix
new file mode 100644
index 0000000000000..c415b783bc948
--- /dev/null
+++ b/pkgs/applications/editors/emacs/elisp-packages/idris2-mode/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, trivialBuild
+, fetchFromGitHub
+, emacs
+, prop-menu
+}:
+
+trivialBuild rec {
+  pname = "idris2-mode";
+  version = "1.1";
+
+  src = fetchFromGitHub {
+    owner = "idris-community";
+    repo = pname;
+    rev = version;
+    hash = "sha256-rTeVjkAw44Q35vjaERs4uoZRJ6XR3FKplEUCVPHhY7Q=";
+  };
+
+  buildInputs = propagatedUserEnvPkgs;
+
+  propagatedUserEnvPkgs = [
+    prop-menu
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/idris-community/idris2-mode";
+    description = "This is an emacs mode for editing Idris 2 code.";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ wuyoli ];
+    inherit (emacs.meta) platforms;
+  };
+}
diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages.nix
index 7b624e1bb97d3..304e2482dccc7 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages.nix
+++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages.nix
@@ -182,6 +182,8 @@
 
   helm-words = callPackage ./helm-words { };
 
+  idris2-mode = callPackage ./idris2-mode { };
+
   isearch-plus = callPackage ./isearch-plus { };
 
   isearch-prop = callPackage ./isearch-prop { };
diff --git a/pkgs/applications/editors/nedit/default.nix b/pkgs/applications/editors/nedit/default.nix
index 5a523c05d7959..b49fbc14fad9c 100644
--- a/pkgs/applications/editors/nedit/default.nix
+++ b/pkgs/applications/editors/nedit/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, xlibsWrapper, motif, libXpm }:
+{ lib, stdenv, fetchurl, motif, libXpm, libXt }:
 
 stdenv.mkDerivation rec {
   pname = "nedit";
@@ -11,8 +11,7 @@ stdenv.mkDerivation rec {
 
   hardeningDisable = [ "format" ];
 
-  nativeBuildInputs = [ xlibsWrapper ];
-  buildInputs = [ motif libXpm ];
+  buildInputs = [ motif libXpm libXt ];
 
   # the linux config works fine on darwin too!
   buildFlags = lib.optional (stdenv.isLinux || stdenv.isDarwin) "linux";
diff --git a/pkgs/applications/editors/vim/plugins/generated.nix b/pkgs/applications/editors/vim/plugins/generated.nix
index 23d5e4ce0c3ac..7b4bb66cdf6e8 100644
--- a/pkgs/applications/editors/vim/plugins/generated.nix
+++ b/pkgs/applications/editors/vim/plugins/generated.nix
@@ -281,12 +281,12 @@ final: prev:
 
   SchemaStore-nvim = buildVimPluginFrom2Nix {
     pname = "SchemaStore.nvim";
-    version = "2022-10-27";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "b0o";
       repo = "SchemaStore.nvim";
-      rev = "a2b72f1b4c354e716b6d3349a5d67f21352469fd";
-      sha256 = "0b5dfrmx22fs1nb83pmr3ryhkd25xyd53zidbizi9hv43pgp1m5m";
+      rev = "bfcd9a05ded8ff6cf89b302bee548c35177d9158";
+      sha256 = "1mwj6dhk7wpyk766bq504i87hyw3rgspc64ml0kc5xf8wq1mxx4m";
     };
     meta.homepage = "https://github.com/b0o/SchemaStore.nvim/";
   };
@@ -341,12 +341,12 @@ final: prev:
 
   SpaceVim = buildVimPluginFrom2Nix {
     pname = "SpaceVim";
-    version = "2022-10-27";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "SpaceVim";
       repo = "SpaceVim";
-      rev = "e9ecbbc530d24712b9d79c6bc9f558a4964145be";
-      sha256 = "0zyya5622lsn3lrf3aphnp33fwbi42kd09dcgggvhzb4mhs4ngf0";
+      rev = "88489db9c24e6c8cbc0b39cc9b8de96d3899cb06";
+      sha256 = "16hn8zpmm9qynzakj8dp3d42pczcqdb3xj5k1di7yw810r8gdycf";
     };
     meta.homepage = "https://github.com/SpaceVim/SpaceVim/";
   };
@@ -437,12 +437,12 @@ final: prev:
 
   YouCompleteMe = buildVimPluginFrom2Nix {
     pname = "YouCompleteMe";
-    version = "2022-10-06";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "ycm-core";
       repo = "YouCompleteMe";
-      rev = "99ccab251fad7c8b235582b46752a0536d01b315";
-      sha256 = "1whjbplgqik4pdp3z1ly7z1qii6z615drqc3i09p4sahdb7cw2n6";
+      rev = "728b47728c31bcbc92fbc196c00230d601ca2a15";
+      sha256 = "11g2gby9qffjs4197ajzk2hsmpsjgak33rxfbfijg82m9ypsf3gc";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/ycm-core/YouCompleteMe/";
@@ -486,12 +486,12 @@ final: prev:
 
   aerial-nvim = buildVimPluginFrom2Nix {
     pname = "aerial.nvim";
-    version = "2022-10-27";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "stevearc";
       repo = "aerial.nvim";
-      rev = "9c179f5932e3a6237f2dd29500e44b9b8cd47f48";
-      sha256 = "0n4b62jw40jxpb0ayp5za202as1wy53f3bv4q0z744zpkvfilqbk";
+      rev = "159041f5f6e0ba914221f097886f1d31ce419c04";
+      sha256 = "06b5hjsbk4k9zw64zfz8pq540wd2q3i5z4sv78n3kh0cbcjj9gmw";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/stevearc/aerial.nvim/";
@@ -535,12 +535,12 @@ final: prev:
 
   ale = buildVimPluginFrom2Nix {
     pname = "ale";
-    version = "2022-10-14";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "dense-analysis";
       repo = "ale";
-      rev = "e4b20544082ba019d8095cbc24ffab43b15e8fc0";
-      sha256 = "0cm259fvym6swcj9q6viap84xg364x05xc8a432a452ca5xrfgp2";
+      rev = "483d056528543df3349299db1ecf4aecfd0d7f44";
+      sha256 = "0h5cx4sn4p19mk12jdsb4msn30awwaj4wm2kpamaaar1gv8m17h5";
     };
     meta.homepage = "https://github.com/dense-analysis/ale/";
   };
@@ -667,12 +667,12 @@ final: prev:
 
   asyncrun-vim = buildVimPluginFrom2Nix {
     pname = "asyncrun.vim";
-    version = "2022-10-11";
+    version = "2022-10-30";
     src = fetchFromGitHub {
       owner = "skywind3000";
       repo = "asyncrun.vim";
-      rev = "eae766d218671754f3a48adc6b3ad7bf2bac0696";
-      sha256 = "0nkqkkk8ahxfvc5f8da9zb1v258lik9514kfv50phz4vj4s76vbh";
+      rev = "4794a74dae54633c586eecd67e31d771323a2f72";
+      sha256 = "1d3xm00xhwdm5yc08mzkvn5897rb58cjrlq86dlbypfrni512sv7";
     };
     meta.homepage = "https://github.com/skywind3000/asyncrun.vim/";
   };
@@ -715,12 +715,12 @@ final: prev:
 
   auto-git-diff = buildVimPluginFrom2Nix {
     pname = "auto-git-diff";
-    version = "2019-09-23";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "hotwatermorning";
       repo = "auto-git-diff";
-      rev = "a14d52b7ed7e7fb69bf1de9d363f3abdd3410b3a";
-      sha256 = "0i0bnlxclh8pzanrxj428728mdx4wdy19fx499kiin87qr4r2hbn";
+      rev = "8d5ba425218912db0d960ba0bd0a1b39d14082b7";
+      sha256 = "0agwvh7gxhw4ys7fr20xzibgc86h4wh16ivzqh1n26r3119gsfy9";
     };
     meta.homepage = "https://github.com/hotwatermorning/auto-git-diff/";
   };
@@ -739,12 +739,12 @@ final: prev:
 
   auto-save-nvim = buildVimPluginFrom2Nix {
     pname = "auto-save.nvim";
-    version = "2022-08-06";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "pocco81";
       repo = "auto-save.nvim";
-      rev = "2c7a2943340ee2a36c6a61db812418fca1f57866";
-      sha256 = "0zfy1pw39c0zf4mfd8kgl1hj9h1hcbsql32rp0wk0kf714hbxqli";
+      rev = "979b6c82f60cfa80f4cf437d77446d0ded0addf0";
+      sha256 = "13kv2p0gj20fg79ch27a9vp10ki11vjj4fx626cj526qpnbs4qbd";
     };
     meta.homepage = "https://github.com/pocco81/auto-save.nvim/";
   };
@@ -931,12 +931,12 @@ final: prev:
 
   bufferline-nvim = buildVimPluginFrom2Nix {
     pname = "bufferline.nvim";
-    version = "2022-10-19";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "akinsho";
       repo = "bufferline.nvim";
-      rev = "e70be6232f632d16d2412b1faf85554285036278";
-      sha256 = "13bbhhmqnygb92crn3pyrk66nc33sick7x23s8d1ffna7qcqirw6";
+      rev = "d631817de1b52c7b1947e25ec8b7638492914768";
+      sha256 = "0nnwq8cmwsy3jssrlvfghs8l6p6m7q5pmbbadp57sm153q4pjvpy";
     };
     meta.homepage = "https://github.com/akinsho/bufferline.nvim/";
   };
@@ -1219,12 +1219,12 @@ final: prev:
 
   cmp-dictionary = buildVimPluginFrom2Nix {
     pname = "cmp-dictionary";
-    version = "2022-08-29";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "uga-rosa";
       repo = "cmp-dictionary";
-      rev = "93f3e2cb2e0b4d31cf3a97820daddc4e9933ef01";
-      sha256 = "0bmmaxnf5inm7lgni4132vh01wkx7864690jv932wkpk0665y2hm";
+      rev = "c942c48eaafe1d9c5a5cdc7f7299336bd60e24f5";
+      sha256 = "13rrqcxhif7990575vsccadzz011zjhy1qbwspyhisffz13isbcv";
     };
     meta.homepage = "https://github.com/uga-rosa/cmp-dictionary/";
   };
@@ -1279,12 +1279,12 @@ final: prev:
 
   cmp-fuzzy-path = buildVimPluginFrom2Nix {
     pname = "cmp-fuzzy-path";
-    version = "2022-10-25";
+    version = "2022-10-30";
     src = fetchFromGitHub {
       owner = "tzachar";
       repo = "cmp-fuzzy-path";
-      rev = "13fdf779f833571ae72ca3a540531cfa9e67e714";
-      sha256 = "1vcwgg9cvidgjwxgwma1lbcf070p9gr60ykalr26rzwd7mwm1xrj";
+      rev = "18ee8f81ab704f3f6656cfe52180dec6f7b497a7";
+      sha256 = "15yivkvjsx3yfgf5i485q4kxmfmqghfqsi869wifff7v0x6y9ghk";
     };
     meta.homepage = "https://github.com/tzachar/cmp-fuzzy-path/";
   };
@@ -1363,12 +1363,12 @@ final: prev:
 
   cmp-nvim-lsp = buildVimPluginFrom2Nix {
     pname = "cmp-nvim-lsp";
-    version = "2022-10-15";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "cmp-nvim-lsp";
-      rev = "3cf38d9c957e95c397b66f91967758b31be4abe6";
-      sha256 = "0l0cqrarrp3rj3pmjivjgh8f1cd3grrkz6pnzpwpwxj9amv6k6p2";
+      rev = "78924d1d677b29b3d1fe429864185341724ee5a2";
+      sha256 = "1gzn4v70wa61yyw9vfxb8m8kkabz0p35nja1l26cfhl71pnkqrka";
     };
     meta.homepage = "https://github.com/hrsh7th/cmp-nvim-lsp/";
   };
@@ -1543,12 +1543,12 @@ final: prev:
 
   cmp-treesitter = buildVimPluginFrom2Nix {
     pname = "cmp-treesitter";
-    version = "2022-10-02";
+    version = "2022-10-28";
     src = fetchFromGitHub {
       owner = "ray-x";
       repo = "cmp-treesitter";
-      rev = "5f695e4173ad74a4c8dbbfd8990286464bf69293";
-      sha256 = "1l32k8fdmpg8lfh1qqmahash957izz9zr6gfjvfs5s4if0fl3f2r";
+      rev = "b40178b780d547bcf131c684bc5fd41af17d05f2";
+      sha256 = "076x4rfcvy81m28dpjaqcxrl3q9mhfz7qbwgkqsyndrasibsmlzr";
     };
     meta.homepage = "https://github.com/ray-x/cmp-treesitter/";
   };
@@ -1615,12 +1615,12 @@ final: prev:
 
   cmp_luasnip = buildVimPluginFrom2Nix {
     pname = "cmp_luasnip";
-    version = "2022-05-01";
+    version = "2022-10-28";
     src = fetchFromGitHub {
       owner = "saadparwaiz1";
       repo = "cmp_luasnip";
-      rev = "a9de941bcbda508d0a45d28ae366bb3f08db2e36";
-      sha256 = "0mh7gimav9p6cgv4j43l034dknz8szsnmrz49b2ra04yk9ihk1zj";
+      rev = "18095520391186d634a0045dacaa346291096566";
+      sha256 = "0b91ap1l3nph46r7b5hcn7413yj3zhrz1jmn4xqp387ng35qz537";
     };
     meta.homepage = "https://github.com/saadparwaiz1/cmp_luasnip/";
   };
@@ -1723,12 +1723,12 @@ final: prev:
 
   coc-nvim = buildVimPluginFrom2Nix {
     pname = "coc.nvim";
-    version = "2022-10-27";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "neoclide";
       repo = "coc.nvim";
-      rev = "b422537936351881782d28755c97156b046156e4";
-      sha256 = "1kkyx4sxvsxg4f3pijhyvmzbp4yd2n8ay8iq3s6ramml5havjflw";
+      rev = "46571a51028dccca9c10c860a51ea3c8adc92de8";
+      sha256 = "1agm4sban6sfg626hf78ayhr98hrvi263jv6i8hk0qhcgv26k32c";
     };
     meta.homepage = "https://github.com/neoclide/coc.nvim/";
   };
@@ -1951,12 +1951,12 @@ final: prev:
 
   conflict-marker-vim = buildVimPluginFrom2Nix {
     pname = "conflict-marker.vim";
-    version = "2021-10-18";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "rhysd";
       repo = "conflict-marker.vim";
-      rev = "22b6133116795ea8fb6705ddca981aa8faecedda";
-      sha256 = "0rh3c1sl145hwyh6idwgyqbrgnwvd91spxc5qs2hfr1xsh53ssx2";
+      rev = "11a4d42244755505b66b15cd4496a150432eb5e3";
+      sha256 = "00sdnhr7fnj27sdjj88cypbw5zp264z290a0xfyp9gbmdnz1nlgx";
     };
     meta.homepage = "https://github.com/rhysd/conflict-marker.vim/";
   };
@@ -2011,24 +2011,24 @@ final: prev:
 
   coq-artifacts = buildVimPluginFrom2Nix {
     pname = "coq.artifacts";
-    version = "2022-10-27";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "coq.artifacts";
-      rev = "6cc7fd56b3f593d6c2eded31d56f59286a218c1b";
-      sha256 = "046z9f4avykflavc2s5b5jg2nv6zlxv75fq2rp70mza5i3niapdz";
+      rev = "47e6f18e8583f9d48c7e71e632ceb4121dc1d6cc";
+      sha256 = "1k425fr1fmq6k7j16m0ylj0z3g11lcdjflw873ivw0wc9kkh6z47";
     };
     meta.homepage = "https://github.com/ms-jpq/coq.artifacts/";
   };
 
   coq-thirdparty = buildVimPluginFrom2Nix {
     pname = "coq.thirdparty";
-    version = "2022-10-27";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "coq.thirdparty";
-      rev = "1766b40665c9bd5946c2dc612de285fbb1b6db99";
-      sha256 = "1mlcdslawk2z833pxwd3lay405sm1bk82h18gsfdvngj8c7zvprx";
+      rev = "eb27fa28ab08dfaf8911d0ac7f1196d8bc0290cc";
+      sha256 = "04ylxsg8xkc7ca4gj4j1r86wagjb8b8vhqwwjxan66igr6lhy2m0";
     };
     meta.homepage = "https://github.com/ms-jpq/coq.thirdparty/";
   };
@@ -2047,12 +2047,12 @@ final: prev:
 
   coq_nvim = buildVimPluginFrom2Nix {
     pname = "coq_nvim";
-    version = "2022-10-27";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "coq_nvim";
-      rev = "5714bca1767620f0f470c2968f66a750b82387f4";
-      sha256 = "02zavylg8arnqi13sm0478lz9sjy70nw8ijbmw44xwv30paajw3v";
+      rev = "0fefc00e9082b9e80345dc7805b146a25773ac2f";
+      sha256 = "1ffiyqz8yqq26v81sblgn1rf6f0nxsvlqcz3ag7bxlps24fdq48x";
     };
     meta.homepage = "https://github.com/ms-jpq/coq_nvim/";
   };
@@ -2191,12 +2191,12 @@ final: prev:
 
   dashboard-nvim = buildVimPluginFrom2Nix {
     pname = "dashboard-nvim";
-    version = "2022-10-08";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "glepnir";
       repo = "dashboard-nvim";
-      rev = "bd7163f56ac715a6d687737ea144731ac6ce8478";
-      sha256 = "0rbxs7bj0vhjrwmjlw74shskgy5igcfyn4iddrk1qc3kryaakdhw";
+      rev = "1aab263f4773106abecae06e684f762d20ef587e";
+      sha256 = "1w7z01r7pakz6jxajp0j3b71dcl2k7sh6g8x07kb0z1ir1lcgfh6";
     };
     meta.homepage = "https://github.com/glepnir/dashboard-nvim/";
   };
@@ -2409,12 +2409,12 @@ final: prev:
 
   deoplete-lsp = buildVimPluginFrom2Nix {
     pname = "deoplete-lsp";
-    version = "2022-08-02";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "deoplete-plugins";
       repo = "deoplete-lsp";
-      rev = "44178ee1dd02baa0958677cd8ec4c6e431ec7d67";
-      sha256 = "0bwdz4f8rwqh15wf8vfildchg2ny24c0p6zm8y069mz0m1n9c3l6";
+      rev = "09a476e0301c7253e7cf459cea605878c51c370d";
+      sha256 = "1px4wnnd3fg5ri5m57l57d296zks6xardyv6fwny22mnx6nfhngl";
     };
     meta.homepage = "https://github.com/deoplete-plugins/deoplete-lsp/";
   };
@@ -2613,12 +2613,12 @@ final: prev:
 
   dracula-nvim = buildVimPluginFrom2Nix {
     pname = "dracula.nvim";
-    version = "2022-10-26";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "Mofiqul";
       repo = "dracula.nvim";
-      rev = "55f24e76a978c73c63d22951b0700823f21253b7";
-      sha256 = "0lkc0589fpf32c13hmzpi04skw0jp2hsl022d385znxm7x51n1v3";
+      rev = "09cbd3d9434c781674fafe4da03d616e35a49d51";
+      sha256 = "06wan9q59bisd9sfdvh8rmw8vj1ahxa87r35gywlkask2jjzq83b";
     };
     meta.homepage = "https://github.com/Mofiqul/dracula.nvim/";
   };
@@ -2661,12 +2661,12 @@ final: prev:
 
   editorconfig-vim = buildVimPluginFrom2Nix {
     pname = "editorconfig-vim";
-    version = "2022-06-20";
+    version = "2022-10-30";
     src = fetchFromGitHub {
       owner = "editorconfig";
       repo = "editorconfig-vim";
-      rev = "d354117b72b3b43b75a29b8e816c0f91af10efe9";
-      sha256 = "12qvximadgb9z2i0hgvj4p4nxaqk0aqbnaqpafpma73xyb23hx5v";
+      rev = "6bba2596601086ddfc882488b1444bf1ea43aab9";
+      sha256 = "02a8v3z8kla7fsirl6lqk9ijj51flhn3mwb4dsc47k4fnpxr4qcp";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/editorconfig/editorconfig-vim/";
@@ -2674,12 +2674,12 @@ final: prev:
 
   editorconfig-nvim = buildVimPluginFrom2Nix {
     pname = "editorconfig.nvim";
-    version = "2022-09-18";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "gpanders";
       repo = "editorconfig.nvim";
-      rev = "7d10fe6bc340fd783c0b61cf627dd235100284db";
-      sha256 = "04rvlpxvjjj842xlmfz93ysmdzz8yv77hii0ngmcaxhrr4yyiqpr";
+      rev = "e72d2331b43e3f08d0ecca44cecded4e20c01fab";
+      sha256 = "037ag6b10frwxp5nj1yc35zq0xn02a2bq179v48pqp3ds8lkanb2";
     };
     meta.homepage = "https://github.com/gpanders/editorconfig.nvim/";
   };
@@ -2819,12 +2819,12 @@ final: prev:
 
   fern-vim = buildVimPluginFrom2Nix {
     pname = "fern.vim";
-    version = "2022-10-18";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "lambdalisue";
       repo = "fern.vim";
-      rev = "d0ada5bb5981d154e8c63a6eac7cca58750280bb";
-      sha256 = "06pli4rpalr5bgk33inj2dk278rjjsxyp2sc2j7sdcgy5qzcaf90";
+      rev = "b5f4635683f9df3ce6a9a1399aec55ee1ec9b681";
+      sha256 = "15sl6d975svs3qp1h1nb2kivqxgzw2f9g3yr6fbpjcqh6n7hxjhr";
     };
     meta.homepage = "https://github.com/lambdalisue/fern.vim/";
   };
@@ -2872,7 +2872,7 @@ final: prev:
       owner = "andviro";
       repo = "flake8-vim";
       rev = "5bc93f7f26ceb18ccbe116830eaf8ff2baa63994";
-      sha256 = "142pgasl0b64a0zxmspdsi636axrgvdx6rh3hwjrb1zlsck19y1a";
+      sha256 = "1s7rb2ygky1jjjqpwhzp5lsf7js1g0yhnbf6x5lfwygz6646xpy3";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/andviro/flake8-vim/";
@@ -2964,12 +2964,12 @@ final: prev:
 
   friendly-snippets = buildVimPluginFrom2Nix {
     pname = "friendly-snippets";
-    version = "2022-10-25";
+    version = "2022-10-28";
     src = fetchFromGitHub {
       owner = "rafamadriz";
       repo = "friendly-snippets";
-      rev = "bb318c455e4e8946d64c79753f5bb07f7c27d711";
-      sha256 = "1fixlb14s38d5wy5a92yraj572q25gxxc9rgpjbq288q96pshnmi";
+      rev = "c93311fbcc840210a2c0db574177d84a35a2c9c1";
+      sha256 = "1kisjlwa2nad9xcwzal1yfdnwpcklkpz2ks6gpqqjfarnxw25c16";
     };
     meta.homepage = "https://github.com/rafamadriz/friendly-snippets/";
   };
@@ -3072,12 +3072,12 @@ final: prev:
 
   fzf-lua = buildVimPluginFrom2Nix {
     pname = "fzf-lua";
-    version = "2022-10-23";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "ibhagwan";
       repo = "fzf-lua";
-      rev = "abc3aed243115dc18fc41acd49b9037655a561af";
-      sha256 = "0s7p8blmlwzxy4lcb8rww6jfb3ws2y1b9pmf5czw867kd5r084b7";
+      rev = "b1f1f76c13d6040b9b9b6ccdb59129c6c4885124";
+      sha256 = "1gf6h1g9s09xb3mmck29ippcqkajzh5156j5g14zsf2v7gsqkyax";
     };
     meta.homepage = "https://github.com/ibhagwan/fzf-lua/";
   };
@@ -3228,12 +3228,12 @@ final: prev:
 
   gitsigns-nvim = buildNeovimPluginFrom2Nix {
     pname = "gitsigns.nvim";
-    version = "2022-10-25";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "lewis6991";
       repo = "gitsigns.nvim";
-      rev = "851cd32caaea84f303c4fdf51d72dfa5fcd795bb";
-      sha256 = "0d5fbxljh2mqsjjmzbk4hgwgq9cyl7vrqplsqvxzrhs58c41f9m5";
+      rev = "d3a8ba0b0d34bbac482b963e52b346065169fa20";
+      sha256 = "0v4gyzgl9k463i66xpj80h02gbxy96hawm0lqffvyzhqkgab143n";
     };
     meta.homepage = "https://github.com/lewis6991/gitsigns.nvim/";
   };
@@ -3384,12 +3384,12 @@ final: prev:
 
   gruvbox-nvim = buildVimPluginFrom2Nix {
     pname = "gruvbox.nvim";
-    version = "2022-10-27";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "ellisonleao";
       repo = "gruvbox.nvim";
-      rev = "2fc4980dfa17e76f7c7e963caa69599051d2e75e";
-      sha256 = "0wk6bdf11lyrmm7z5bidsjphn76qgwdgjdndx802gn1dghjljp0v";
+      rev = "9002dc7a717d38b7bbe212febe6370fd7d047308";
+      sha256 = "0hk298ah362kshvpxi3cjmp06yl7jnsj32n05pfw7a1nfiflk6xq";
     };
     meta.homepage = "https://github.com/ellisonleao/gruvbox.nvim/";
   };
@@ -3455,12 +3455,12 @@ final: prev:
 
   haskell-tools-nvim = buildVimPluginFrom2Nix {
     pname = "haskell-tools.nvim";
-    version = "2022-10-26";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "MrcJkb";
       repo = "haskell-tools.nvim";
-      rev = "f7f740901a667322bb0f70a50d405448afdf40c1";
-      sha256 = "1ncfpw0fyvg6xbvac6j0cwz0258q1hkvf5ci4ygp7apppymj5h80";
+      rev = "249bf253c58b9e70d24a02c5231a75f69d170abe";
+      sha256 = "0qyfy5ll3rj1svp0ahbq1f3l3ywk02wm5b2d58ccgw6zfcwndm4y";
     };
     meta.homepage = "https://github.com/MrcJkb/haskell-tools.nvim/";
   };
@@ -3551,12 +3551,12 @@ final: prev:
 
   hop-nvim = buildVimPluginFrom2Nix {
     pname = "hop.nvim";
-    version = "2022-10-09";
+    version = "2022-10-30";
     src = fetchFromGitHub {
       owner = "phaazon";
       repo = "hop.nvim";
-      rev = "6591b3656b75ff313cc38dc662a7ee8f75f1c165";
-      sha256 = "1y6jvl8q8j46zy1c18xi0hfdbma2cq7g3k0ymw05qghvvjyv65bq";
+      rev = "90db1b2c61b820e230599a04fedcd2679e64bd07";
+      sha256 = "18akjbplhp27di5l0bi9yd2haysgvw8yv3yk6cgwbizmk6inb5ji";
     };
     meta.homepage = "https://github.com/phaazon/hop.nvim/";
   };
@@ -3852,12 +3852,12 @@ final: prev:
 
   jsonc-vim = buildVimPluginFrom2Nix {
     pname = "jsonc.vim";
-    version = "2021-12-20";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "neoclide";
       repo = "jsonc.vim";
-      rev = "b87595ba7f3fa4bdcc8803a2ec72574719fc9fd6";
-      sha256 = "02bgqxi20lmq97s9nnsb1mmjp45fh5a9pbhbs6hl2zmb03spbvpi";
+      rev = "6fb92460f9e50505c9b93181a00f27d10c9b383f";
+      sha256 = "1z2zi951xgssq1d343b0rhcj1xn4qwvv1b2wzvy8jg7ak9pgrl1a";
     };
     meta.homepage = "https://github.com/neoclide/jsonc.vim/";
   };
@@ -3984,12 +3984,12 @@ final: prev:
 
   lean-nvim = buildVimPluginFrom2Nix {
     pname = "lean.nvim";
-    version = "2022-10-25";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "Julian";
       repo = "lean.nvim";
-      rev = "46de7a0aed7fab5e38d146fef45074d16cf67d27";
-      sha256 = "098n6qf3qmpya8ib15ybx02k4cx0sm2idrgqsijq8bsrabvld18c";
+      rev = "60d71f31b895cc1a1cb319f780df44de7664f0ee";
+      sha256 = "1x1rdcxh2ga35x527f7csp0sfif7zrb8j4q1lsmvvzvi41y6rq70";
     };
     meta.homepage = "https://github.com/Julian/lean.nvim/";
   };
@@ -4020,24 +4020,24 @@ final: prev:
 
   leap-nvim = buildVimPluginFrom2Nix {
     pname = "leap.nvim";
-    version = "2022-10-23";
+    version = "2022-10-30";
     src = fetchFromGitHub {
       owner = "ggandor";
       repo = "leap.nvim";
-      rev = "847a1dcfb1a3a576860151754d95fb3b0014663e";
-      sha256 = "16dg98qs0531hfcvg6mfb643nivgsx6q4jz8yl2cqd89c0mkfgq4";
+      rev = "ba4241754451e6bb4d8e9e4000caba0a35fba75b";
+      sha256 = "17rcvzyga4azz5s28yaa26l40xcfrwks4mhjlxkw2wj2az3ss3sf";
     };
     meta.homepage = "https://github.com/ggandor/leap.nvim/";
   };
 
   legendary-nvim = buildVimPluginFrom2Nix {
     pname = "legendary.nvim";
-    version = "2022-10-26";
+    version = "2022-10-30";
     src = fetchFromGitHub {
       owner = "mrjones2014";
       repo = "legendary.nvim";
-      rev = "32b6ffbebe88751ae07812a93d44b833fdf2d00e";
-      sha256 = "0mkixp8sv85x7zfs3sm8k8xmnqvxhh0pz58kmfadkjw1vxs09aiy";
+      rev = "cf388c44976ca8a9f950d98879b3e98d0f0f4b83";
+      sha256 = "0y0zndgs43aa30pdqjpsf1kyc65vg3klwfqqkkz3dkk75417xi2x";
     };
     meta.homepage = "https://github.com/mrjones2014/legendary.nvim/";
   };
@@ -4391,12 +4391,12 @@ final: prev:
 
   lsp_signature-nvim = buildVimPluginFrom2Nix {
     pname = "lsp_signature.nvim";
-    version = "2022-10-21";
+    version = "2022-10-30";
     src = fetchFromGitHub {
       owner = "ray-x";
       repo = "lsp_signature.nvim";
-      rev = "ad1f9b413e27a8cb86893326e7b02982c69fe3f3";
-      sha256 = "0w0pww74n9abxkbqwfcp2fllaixvcw8972van8mcnj3qhmg743yi";
+      rev = "7a1845e8b5fc68dc5ea2a1a7d2d2b04395b6b190";
+      sha256 = "1bw06dxd36k9ylwidv8yynrqg4w17lda4piajfc73h30w29z28cp";
     };
     meta.homepage = "https://github.com/ray-x/lsp_signature.nvim/";
   };
@@ -4463,12 +4463,12 @@ final: prev:
 
   luasnip = buildVimPluginFrom2Nix {
     pname = "luasnip";
-    version = "2022-10-14";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "l3mon4d3";
       repo = "luasnip";
-      rev = "663d54482b11bca1ce94f56993b9f6ab485a13dc";
-      sha256 = "11dca07m9msyqqdbjrb4136hi77m8vh0jqpf2w0kjs6d9m63g0ab";
+      rev = "619796e2477f7233e5fdff456240676a08482684";
+      sha256 = "1dy46rw1ba7px05h917hmc3mr11dp5q6jy9qs63f59jck24v0xqg";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/l3mon4d3/luasnip/";
@@ -4548,16 +4548,28 @@ final: prev:
 
   material-nvim = buildVimPluginFrom2Nix {
     pname = "material.nvim";
-    version = "2022-10-25";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "marko-cerovac";
       repo = "material.nvim";
-      rev = "da70b62c602ae682b3d091fb8c14a6a3bcac55db";
-      sha256 = "1hsz66vs858yj0l823v938r69d1ly6fqi03927rh45a58mx94ilh";
+      rev = "3a9c06c398370afec624121fd0ebf5089ad910c5";
+      sha256 = "1v9vsphnp19p989rv0b4c8nix89kgc2w9kfqwn6an5103cl43yia";
     };
     meta.homepage = "https://github.com/marko-cerovac/material.nvim/";
   };
 
+  material-vim = buildVimPluginFrom2Nix {
+    pname = "material.vim";
+    version = "2022-09-14";
+    src = fetchFromGitHub {
+      owner = "kaicataldo";
+      repo = "material.vim";
+      rev = "81d5d0bb30677b0846a2721a600f2f45db6d10a7";
+      sha256 = "1j23wi0hh5h0pc0rk5dxvsc60k484h5haa2gfxzahjqd7kzil4y8";
+    };
+    meta.homepage = "https://github.com/kaicataldo/material.vim/";
+  };
+
   mayansmoke = buildVimPluginFrom2Nix {
     pname = "mayansmoke";
     version = "2010-10-18";
@@ -4572,24 +4584,24 @@ final: prev:
 
   mini-nvim = buildVimPluginFrom2Nix {
     pname = "mini.nvim";
-    version = "2022-10-25";
+    version = "2022-10-30";
     src = fetchFromGitHub {
       owner = "echasnovski";
       repo = "mini.nvim";
-      rev = "dc0ccf1b0499d649a6177d2a406babcfe73b97de";
-      sha256 = "1zxhxrac6y3pnsbcay8pxh3jiihhn2sdak0lhaj36dbj915lxrw8";
+      rev = "3d6128b8f7c90ef8cdb0ebb7ea2f96544fa8d060";
+      sha256 = "1y514ysh0jgx9bjh5mcnmiic4m9jzz0w2jmlsf9n42hpazbi6z22";
     };
     meta.homepage = "https://github.com/echasnovski/mini.nvim/";
   };
 
   minimap-vim = buildVimPluginFrom2Nix {
     pname = "minimap.vim";
-    version = "2022-07-15";
+    version = "2022-10-28";
     src = fetchFromGitHub {
       owner = "wfxr";
       repo = "minimap.vim";
-      rev = "3801d9dfaa5431e7b83ae6f98423ac077d9f5c3f";
-      sha256 = "1qgrfmbdk420qa7v6r6c6galbr8cg0jkib4i0jvx0m3pdg4sw4rp";
+      rev = "2b0151d7302f87f90c4664d119518dda73cc4633";
+      sha256 = "0isasr5d0hmr818sbwax6q0cwbr0nja72s2ll93wgq6i3l51z964";
     };
     meta.homepage = "https://github.com/wfxr/minimap.vim/";
   };
@@ -4896,12 +4908,12 @@ final: prev:
 
   neco-vim = buildVimPluginFrom2Nix {
     pname = "neco-vim";
-    version = "2022-05-22";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "neco-vim";
-      rev = "facc3db7c5836fe2424936e8dd06f227e20f96db";
-      sha256 = "01rjirflkydx6awc7qwiiv9fln1ckfx2rnvcf1h1cz8ra8zk8qh4";
+      rev = "d43fa219390094ce2a8f5c929331f0a9e2f666d1";
+      sha256 = "15ri234c2hfgmbd00l3yx4a3wb8nbz2x4fnk0m0s6jaw0njsas0h";
     };
     meta.homepage = "https://github.com/Shougo/neco-vim/";
   };
@@ -4944,12 +4956,12 @@ final: prev:
 
   neodev-nvim = buildVimPluginFrom2Nix {
     pname = "neodev.nvim";
-    version = "2022-10-27";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "neodev.nvim";
-      rev = "9f2bd5ca1b7bdc184069a0b2db8d7be1c377d3ac";
-      sha256 = "0zqzjlq2x576vc7z4bc72a6d7vp5fvg5fq4qvppv7zyhvgwmg1jk";
+      rev = "d9d2afc71ad32ed1edb2feecfa7c5b30ce78583a";
+      sha256 = "0bgfq9lihw77x9xyfizi0p5ixf7nx0spn4v3y1469mkmgab9zfm1";
     };
     meta.homepage = "https://github.com/folke/neodev.nvim/";
   };
@@ -5028,12 +5040,12 @@ final: prev:
 
   neorg = buildVimPluginFrom2Nix {
     pname = "neorg";
-    version = "2022-10-25";
+    version = "2022-10-30";
     src = fetchFromGitHub {
       owner = "nvim-neorg";
       repo = "neorg";
-      rev = "10cd28e3bec3f6583f545ba0d504e65f63a64aae";
-      sha256 = "15x4zk6661g5g80xj76k2yvq4dc2w9dkac9p5l88cbrkj6xwv0jm";
+      rev = "a03ae3f388133d4838553eb1ce1ef65c3dee6751";
+      sha256 = "04flwch8rv0h706k0bjdgkpnnw5v17z356b91lxq0k8q0hmd196r";
     };
     meta.homepage = "https://github.com/nvim-neorg/neorg/";
   };
@@ -5064,12 +5076,12 @@ final: prev:
 
   neosnippet-vim = buildVimPluginFrom2Nix {
     pname = "neosnippet.vim";
-    version = "2022-09-07";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "neosnippet.vim";
-      rev = "af18dc963b706568bf28f7dd2facea2ca2784299";
-      sha256 = "130x7nfygwqgwmaly77zp37z3gh16jyjvrb7sk4pg19d5ax8ysbr";
+      rev = "b7c241fb5737c50bf09cf1e26298492c3fc0457a";
+      sha256 = "11gbxkmbiiklqa8gzjm7dhg3xsv9k2wl131q6g18nwyrc5gaw8vb";
     };
     meta.homepage = "https://github.com/Shougo/neosnippet.vim/";
   };
@@ -5086,14 +5098,26 @@ final: prev:
     meta.homepage = "https://github.com/kassio/neoterm/";
   };
 
+  neotest = buildVimPluginFrom2Nix {
+    pname = "neotest";
+    version = "2022-10-27";
+    src = fetchFromGitHub {
+      owner = "nvim-neotest";
+      repo = "neotest";
+      rev = "0be9899e859da147ad28c23a30a1df2081c16741";
+      sha256 = "08f7d8w82jk5jd2w4wrh8x4gyw0msv7m82cpzd1ahijg917818pd";
+    };
+    meta.homepage = "https://github.com/nvim-neotest/neotest/";
+  };
+
   neotest-haskell = buildVimPluginFrom2Nix {
     pname = "neotest-haskell";
-    version = "2022-10-15";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "MrcJkb";
       repo = "neotest-haskell";
-      rev = "d89b5e3e676923e3a373965fd7b6bcd705e14e74";
-      sha256 = "1j13q6wz2ci58mzyyq4p5apn86xplywal96bnsm1dqwmn1bb1707";
+      rev = "550815b39a306dddffd133c29a9f8a4907ef4f1a";
+      sha256 = "1zxlqqn490sahv3kp0hkxwqmy1a5wm4qixs4gn67vd5xl2d1jprh";
     };
     meta.homepage = "https://github.com/MrcJkb/neotest-haskell/";
   };
@@ -5148,12 +5172,12 @@ final: prev:
 
   nerdcommenter = buildVimPluginFrom2Nix {
     pname = "nerdcommenter";
-    version = "2022-10-11";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "preservim";
       repo = "nerdcommenter";
-      rev = "fe74a1b890701eb5f196e9639b2147d5f126d9ae";
-      sha256 = "03427xhx5c1ri7b3wrbgkqk3dv31dxnxjvqrg9h698r0lfb844a9";
+      rev = "fd2114b46d648f2f97831cf404f14863428001b8";
+      sha256 = "0352nq8cnx73wv7z878n7r0vqhgyy6l8al66b0cf3v5qw671hdqm";
     };
     meta.homepage = "https://github.com/preservim/nerdcommenter/";
   };
@@ -5220,12 +5244,12 @@ final: prev:
 
   nightfox-nvim = buildVimPluginFrom2Nix {
     pname = "nightfox.nvim";
-    version = "2022-10-27";
+    version = "2022-10-28";
     src = fetchFromGitHub {
       owner = "EdenEast";
       repo = "nightfox.nvim";
-      rev = "9df01a3fb3d41e1e388ded7a34fe97a19146a283";
-      sha256 = "0n995a33riwbp0dfawwrm5xama6iaak1fvnsgqcx2aigdbjzgmh2";
+      rev = "db26a92fc0175c9ffaa27db489308e306823ed3f";
+      sha256 = "09nyfwp8362zlimg1hv5s09w6cxl5gfka5ixcvf0qx193q5i6y7f";
     };
     meta.homepage = "https://github.com/EdenEast/nightfox.nvim/";
   };
@@ -5268,12 +5292,12 @@ final: prev:
 
   noice-nvim = buildVimPluginFrom2Nix {
     pname = "noice.nvim";
-    version = "2022-10-27";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "noice.nvim";
-      rev = "ac29174bebeedb86983eea7436dabcf2b17dbc19";
-      sha256 = "0byphv8m0g0mj2msw2dcrd6g3pkj81ssabm1zh1980w85z0pkcj6";
+      rev = "7b62ccfc236e51e78e5b2fc7d3068eacd65e4590";
+      sha256 = "152y0i8csv6fhy5ddbav8v55xpm2f32zqsmi0cbk59ila2xyrfv0";
     };
     meta.homepage = "https://github.com/folke/noice.nvim/";
   };
@@ -5292,12 +5316,12 @@ final: prev:
 
   nord-nvim = buildVimPluginFrom2Nix {
     pname = "nord.nvim";
-    version = "2022-10-23";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "shaunsingh";
       repo = "nord.nvim";
-      rev = "c8d932b46f3583f072c87204dd6fb575972053db";
-      sha256 = "191fhg7jffna513hvks7i9b2bs086dj4vmjf2nhdr6w32m4fh4vh";
+      rev = "a6bb6a8b71fdd5329d0ae0fd637e700b12e4a5cb";
+      sha256 = "0p1bdpi1h4nxrpkv90xqzhlbbgndy18xg64ws7izxqhkwjm5bv79";
     };
     meta.homepage = "https://github.com/shaunsingh/nord.nvim/";
   };
@@ -5400,12 +5424,12 @@ final: prev:
 
   nvim-base16 = buildVimPluginFrom2Nix {
     pname = "nvim-base16";
-    version = "2022-10-19";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "RRethy";
       repo = "nvim-base16";
-      rev = "52e077ffadf3c03d2186515091fa9a88a1f950ac";
-      sha256 = "198hfiksp29pdqwklkbc5zp63wnvwz7d39vxpklywyvy1wdf6l1b";
+      rev = "a1010173d1cf2fa719618644c2373611ea379402";
+      sha256 = "17pwi0haqj7f4d81i148y5p6k5fczj6898p828gjxjm5f0blk2pj";
     };
     meta.homepage = "https://github.com/RRethy/nvim-base16/";
   };
@@ -5424,12 +5448,12 @@ final: prev:
 
   nvim-bqf = buildVimPluginFrom2Nix {
     pname = "nvim-bqf";
-    version = "2022-10-06";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "kevinhwang91";
       repo = "nvim-bqf";
-      rev = "c33b5c57ff82d71f8004b37c8c17a7928da76d08";
-      sha256 = "019lhnwaiz0drdqx6vj56hgjqklfjf48vsx1fk35j5b97nh0sbnh";
+      rev = "9ed5353e69a919bdcfb66f2708bc0974ecc79a23";
+      sha256 = "1skkj6kp8llmln2v8g9kz77y6253nsbhr6zxs5ln3fpawk0s7ajs";
     };
     meta.homepage = "https://github.com/kevinhwang91/nvim-bqf/";
   };
@@ -5460,12 +5484,12 @@ final: prev:
 
   nvim-cmp = buildNeovimPluginFrom2Nix {
     pname = "nvim-cmp";
-    version = "2022-10-22";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "nvim-cmp";
-      rev = "cdb77665bbf23bd2717d424ddf4bf98057c30bb3";
-      sha256 = "1yyg4ja7vsf1wwjydq6hx6zdgq1pdbklagzh09nh14p98kw4rdqj";
+      rev = "9bb8ee6e2d6ab3c8cc53323b79f05886bc722faa";
+      sha256 = "1z7b53yxamph255rvrs5a4pq5hbqa0nbwpdh1xy8fvfc71gap80n";
     };
     meta.homepage = "https://github.com/hrsh7th/nvim-cmp/";
   };
@@ -5496,12 +5520,12 @@ final: prev:
 
   nvim-colorizer-lua = buildVimPluginFrom2Nix {
     pname = "nvim-colorizer.lua";
-    version = "2022-09-28";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "nvchad";
       repo = "nvim-colorizer.lua";
-      rev = "9dd7ecde55b06b5114e1fa67c522433e7e59db8b";
-      sha256 = "1lmvxz8k680yfjhadkh0km2v16vhg8p07xbkkvc0jhkp6hg4sxx4";
+      rev = "760e27df4dd966607e8fb7fd8b6b93e3c7d2e193";
+      sha256 = "0zqwdj7qk8sldz99c3f5m2xmvl2kj7n18f9jr9q17nb70rz490xn";
     };
     meta.homepage = "https://github.com/nvchad/nvim-colorizer.lua/";
   };
@@ -5580,12 +5604,12 @@ final: prev:
 
   nvim-dap-python = buildVimPluginFrom2Nix {
     pname = "nvim-dap-python";
-    version = "2022-10-09";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-dap-python";
-      rev = "408186a9d1e03e078e3603af912f9e264ceb2742";
-      sha256 = "131a8m5ngxlpbx2b9syksmcci7fff03naw56z7djkvs1w6zh4ln4";
+      rev = "27a0eff2bd3114269bb010d895b179e667e712bd";
+      sha256 = "1pypxg18qj74yjlfrr9wdd0w0hlh2mvd5xv381rhnzvb4h8hnp2j";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-dap-python/";
   };
@@ -5652,12 +5676,12 @@ final: prev:
 
   nvim-gdb = buildVimPluginFrom2Nix {
     pname = "nvim-gdb";
-    version = "2022-10-27";
+    version = "2022-10-30";
     src = fetchFromGitHub {
       owner = "sakhnik";
       repo = "nvim-gdb";
-      rev = "127087ec368212d4d763aeb58fdf585abc6a8a0e";
-      sha256 = "15f1crn83yf5amdv0m9cc54znq1w3m2x5nywh70bsz753a37a4ys";
+      rev = "2ff5622755810e795b2ed33476ab7fbfab918d15";
+      sha256 = "19qc0q70l7z3q3jgyk8z5y9j6jsh97x4gaxq940zqlhya5qs783g";
     };
     meta.homepage = "https://github.com/sakhnik/nvim-gdb/";
   };
@@ -5724,12 +5748,12 @@ final: prev:
 
   nvim-jdtls = buildVimPluginFrom2Nix {
     pname = "nvim-jdtls";
-    version = "2022-10-23";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-jdtls";
-      rev = "47472f648f329c1bf23257c9e5230535949baeec";
-      sha256 = "1flyjwzma2vrmf8vbpwck5x74xv490r19d2y733llxr34vkmip2y";
+      rev = "7bc572fc357d7dec8d3ca620b53e763776472582";
+      sha256 = "10rm01cxc1xnw7m886ssnmb5ihlsfjhp6sqm9dhmrkg4ywkbhj9m";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-jdtls/";
   };
@@ -5784,12 +5808,12 @@ final: prev:
 
   nvim-lint = buildVimPluginFrom2Nix {
     pname = "nvim-lint";
-    version = "2022-10-26";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-lint";
-      rev = "844bb7828557052da765b9b0fa5ab0574eb7187a";
-      sha256 = "13aczdfdxx7r0sambfhh8awa2azskxlyaks6vsy2jhii8698vhw9";
+      rev = "82f43b518460ff4e29f6b3b2b29018012cfd1a83";
+      sha256 = "17ibqbpslzgccpv447dj7cjyysyhqr4nxysyi383k1rl4a46ksb4";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-lint/";
   };
@@ -5808,12 +5832,12 @@ final: prev:
 
   nvim-lspconfig = buildVimPluginFrom2Nix {
     pname = "nvim-lspconfig";
-    version = "2022-10-26";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "neovim";
       repo = "nvim-lspconfig";
-      rev = "2315a397fd5057e3a74a09a240f606af28447ebf";
-      sha256 = "1rqy3lcxy8lxi041g7s5j0nvmbch6s43r6agnwspqm1ag1i7pin0";
+      rev = "5f4b1fa83c80f43e434c1fb227967dac9ad8f44c";
+      sha256 = "1bvf67jdf1jg0ljcm62hyzy523ngnkzhkxzny5w3z8nf30b15cd8";
     };
     meta.homepage = "https://github.com/neovim/nvim-lspconfig/";
   };
@@ -5830,6 +5854,18 @@ final: prev:
     meta.homepage = "https://github.com/RishabhRD/nvim-lsputils/";
   };
 
+  nvim-luadev = buildVimPluginFrom2Nix {
+    pname = "nvim-luadev";
+    version = "2022-01-26";
+    src = fetchFromGitHub {
+      owner = "bfredl";
+      repo = "nvim-luadev";
+      rev = "2a2c242bd751c289cfc1bc27f357925f68eba098";
+      sha256 = "0prwzxgg6fqkfmqqs41c1c81lch2x4qrs7287l5b104rz3alcinn";
+    };
+    meta.homepage = "https://github.com/bfredl/nvim-luadev/";
+  };
+
   nvim-luapad = buildVimPluginFrom2Nix {
     pname = "nvim-luapad";
     version = "2022-10-26";
@@ -5844,12 +5880,12 @@ final: prev:
 
   nvim-metals = buildVimPluginFrom2Nix {
     pname = "nvim-metals";
-    version = "2022-10-24";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "scalameta";
       repo = "nvim-metals";
-      rev = "2a60af7dfe2daf6b4635c81d3241304eaa7bb741";
-      sha256 = "13vvb1xjyicsh36x81jn76brh4x5qpgiyl7b0159s8xrlv67a029";
+      rev = "613556dfa4cbdfcba4d515ce781e1b5f284f373c";
+      sha256 = "0k04hc9xsrj0b4lavsppni9q9g1r8zlyaq7ih7rrq2slli8zvdn3";
     };
     meta.homepage = "https://github.com/scalameta/nvim-metals/";
   };
@@ -5868,12 +5904,12 @@ final: prev:
 
   nvim-navic = buildVimPluginFrom2Nix {
     pname = "nvim-navic";
-    version = "2022-10-25";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "smiteshp";
       repo = "nvim-navic";
-      rev = "9f7f0b797096ee852106c4fd47b6b13d0ebb364e";
-      sha256 = "1zqbs170ppmjh3njsg24z5ic965ga0plrbjam88qys1ap0gdph2v";
+      rev = "eebc4f15132c587c52fcd2ce2f0da78fc19a16c0";
+      sha256 = "1pwshw6r90ycc315f0savp2iid4rchqplphq9ms36nb4x36894mq";
     };
     meta.homepage = "https://github.com/smiteshp/nvim-navic/";
   };
@@ -5904,12 +5940,12 @@ final: prev:
 
   nvim-notify = buildVimPluginFrom2Nix {
     pname = "nvim-notify";
-    version = "2022-10-17";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "rcarriga";
       repo = "nvim-notify";
-      rev = "5e8d4942976bbc45e3adb8f4beb81964a79cfd02";
-      sha256 = "1rxpgx52714sf01kwps9ii0if1q6b32hbc80yzwwpbjs8snmkj58";
+      rev = "354e0ebb269d9e4feca073372431e8453f5f262a";
+      sha256 = "1s0jb61hq14hh71saimj8llqqcxibg8bi8gd38l4yrz0c1cqc61l";
     };
     meta.homepage = "https://github.com/rcarriga/nvim-notify/";
   };
@@ -6000,12 +6036,12 @@ final: prev:
 
   nvim-surround = buildVimPluginFrom2Nix {
     pname = "nvim-surround";
-    version = "2022-10-14";
+    version = "2022-10-28";
     src = fetchFromGitHub {
       owner = "kylechui";
       repo = "nvim-surround";
-      rev = "81f672ad6525b5d8cc27bc6ff84636cc12664485";
-      sha256 = "10xrnl3aqgz85knlf8ypxcq0zk9k4rby2pcfvh0kiyc46shqcwlr";
+      rev = "7e5096b736ae252d04d543af6a13280125dc6d0f";
+      sha256 = "1hqa8c0bfj7yl3zdpid4aj26jay65f40ixaydh7ic79rxm9a1k0i";
     };
     meta.homepage = "https://github.com/kylechui/nvim-surround/";
   };
@@ -6024,24 +6060,24 @@ final: prev:
 
   nvim-tree-lua = buildVimPluginFrom2Nix {
     pname = "nvim-tree.lua";
-    version = "2022-10-24";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "nvim-tree";
       repo = "nvim-tree.lua";
-      rev = "1be1e17be5841274253fb445f1b5db90bade7539";
-      sha256 = "1dman1mrg6f2w1hi74si20gnzhs0ldqa0b6pi4jlphp7ba2bkm5f";
+      rev = "6ca6f99e7689c68679e8f0a58b421545ff52931f";
+      sha256 = "0mw2sdlbmnh9x51pn6ggifk0vgik3iim6c3j3mvz3hq33qx8y75h";
     };
     meta.homepage = "https://github.com/nvim-tree/nvim-tree.lua/";
   };
 
   nvim-treesitter = buildVimPluginFrom2Nix {
     pname = "nvim-treesitter";
-    version = "2022-10-27";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter";
-      rev = "c155b6bb308269ca4a376777a8621261efbd17cb";
-      sha256 = "0g95nl121gkqcs5w0r31qcn11mxy9g9ws829mcb41y3h5jkbly1a";
+      rev = "e7bdcee167ae41295a3e99ad460ae80d2bb961d7";
+      sha256 = "1h2aab3zgw4q48pllx211kxqaa47ridfa8w610jb0594sqwhfynx";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter/";
   };
@@ -6108,12 +6144,12 @@ final: prev:
 
   nvim-ts-context-commentstring = buildVimPluginFrom2Nix {
     pname = "nvim-ts-context-commentstring";
-    version = "2022-10-14";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "joosepalviste";
       repo = "nvim-ts-context-commentstring";
-      rev = "2941f0064874b33e93d3a794a8a4e99f5f6ece56";
-      sha256 = "1hq2cv39wmpaak9c0gkjif4xp6sz21k5fygkk5lpxxbsdbm74v1g";
+      rev = "32d9627123321db65a4f158b72b757bcaef1a3f4";
+      sha256 = "176dqn0kxdcsjfxh3nhlkiwh7nrj9792rzbmmrkgghjjw87zrd4p";
     };
     meta.homepage = "https://github.com/joosepalviste/nvim-ts-context-commentstring/";
   };
@@ -6228,12 +6264,12 @@ final: prev:
 
   omnisharp-extended-lsp-nvim = buildVimPluginFrom2Nix {
     pname = "omnisharp-extended-lsp.nvim";
-    version = "2022-05-10";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "Hoffs";
       repo = "omnisharp-extended-lsp.nvim";
-      rev = "e0dbe96194465f26e2cfff5d170ba8c88287e329";
-      sha256 = "119pc3va1g76clvm6c09jldsybjqml8fycx23lyh85f00jrwr2y9";
+      rev = "83be0f285afa360ca4a134820381e54b4b7aadd3";
+      sha256 = "1hdsc68qzf4j83xah72yjan7mlsvdz7w310m1qw81yzd45z0scyd";
     };
     meta.homepage = "https://github.com/Hoffs/omnisharp-extended-lsp.nvim/";
   };
@@ -6252,12 +6288,12 @@ final: prev:
 
   onedark-nvim = buildVimPluginFrom2Nix {
     pname = "onedark.nvim";
-    version = "2022-10-22";
+    version = "2022-10-28";
     src = fetchFromGitHub {
       owner = "navarasu";
       repo = "onedark.nvim";
-      rev = "7aeca4713a922139b5e14c037b5faf34dc41c8d2";
-      sha256 = "10s589bxij0g55m9fab64338av6g21b9ahpf2ncrsihgnr1319x5";
+      rev = "cad3d983e57f467ba8e8252b0567e96dde9a8f0d";
+      sha256 = "1jsj9a1ggii2zcjpi6wn6clzsj0vbl2frwqp0h259zlkvwrkx2ri";
     };
     meta.homepage = "https://github.com/navarasu/onedark.nvim/";
   };
@@ -6276,12 +6312,12 @@ final: prev:
 
   onedarkpro-nvim = buildVimPluginFrom2Nix {
     pname = "onedarkpro.nvim";
-    version = "2022-10-25";
+    version = "2022-10-28";
     src = fetchFromGitHub {
       owner = "olimorris";
       repo = "onedarkpro.nvim";
-      rev = "05219bc43981109105329428a03fe0ae254e8a12";
-      sha256 = "16il2l4270jlxf59d7h1d2m5h90jw9dkihnmym3lbj8rysk9m4xc";
+      rev = "62b12ba06cb617fdccfd1553f864e6492dcff2fa";
+      sha256 = "1kvnycwid2s7iabaql3iwlin4n88czm56d0qd12hhz2sa6jrriy9";
     };
     meta.homepage = "https://github.com/olimorris/onedarkpro.nvim/";
   };
@@ -6300,12 +6336,12 @@ final: prev:
 
   onenord-nvim = buildVimPluginFrom2Nix {
     pname = "onenord.nvim";
-    version = "2022-10-19";
+    version = "2022-10-30";
     src = fetchFromGitHub {
       owner = "rmehri01";
       repo = "onenord.nvim";
-      rev = "1d4c13a7fb6480e4dd508cda8207732f18d419bf";
-      sha256 = "0l65mnshc6hmsarbr002z06k7c88aqyl0d4s9qqwdchlbi7h11dj";
+      rev = "9f797bee2853d94d8e8fdf05d277aa1ec21043eb";
+      sha256 = "0d0vj1xf6v44kbkz0dgq51d4vfkn30v4gkmf7wln87v5ka1l63j6";
     };
     meta.homepage = "https://github.com/rmehri01/onenord.nvim/";
   };
@@ -6565,12 +6601,12 @@ final: prev:
 
   project-nvim = buildVimPluginFrom2Nix {
     pname = "project.nvim";
-    version = "2022-09-18";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "ahmedkhalf";
       repo = "project.nvim";
-      rev = "628de7e433dd503e782831fe150bb750e56e55d6";
-      sha256 = "0p7j5hh45rdricrryy87m7p26wdg6fs07gbyjhrvzxvbsmfbzn9s";
+      rev = "685bc8e3890d2feb07ccf919522c97f7d33b94e4";
+      sha256 = "0s734kpy3hslb7n6y94cv08clvxh5qp6br1ns3178y99ysv36vkx";
     };
     meta.homepage = "https://github.com/ahmedkhalf/project.nvim/";
   };
@@ -6606,7 +6642,7 @@ final: prev:
       owner = "python-mode";
       repo = "python-mode";
       rev = "85d2cd1a196ac1def79d4599b5be69395ed5b603";
-      sha256 = "0jk8pssliyar4qs42x9m1jgri446cr4yc7iv8l9wc9xn6r3qnm29";
+      sha256 = "0gr4ag5qymdpx0mlfvx743y4s8bjd7v4a0yzd02jvmz3dyylvavw";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/python-mode/python-mode/";
@@ -6770,12 +6806,12 @@ final: prev:
 
   registers-nvim = buildVimPluginFrom2Nix {
     pname = "registers.nvim";
-    version = "2022-10-22";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "tversteeg";
       repo = "registers.nvim";
-      rev = "9c11534cbc01aeba573805522d2f8f9bcc24379c";
-      sha256 = "0pchq82jrzg1ip00fwv44cxp14k6l6j8xp916l1wbqc0izvfq775";
+      rev = "395e119782845fe8fa3b7d6d17c60745a2004515";
+      sha256 = "0lxfs4rvnvgc7qmcyqspgza70m66khck57fx80v4d6whz9c5ncav";
     };
     meta.homepage = "https://github.com/tversteeg/registers.nvim/";
   };
@@ -6926,12 +6962,12 @@ final: prev:
 
   satellite-nvim = buildVimPluginFrom2Nix {
     pname = "satellite.nvim";
-    version = "2022-10-18";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "lewis6991";
       repo = "satellite.nvim";
-      rev = "609623c88ef9a1e6869dd20443a2027c10502b92";
-      sha256 = "15jkzdzfhlr7892k9g00qnrn6yffc6fjlx5xpn1jmh28mq7fix9n";
+      rev = "3673bc04db3673e15be0e82b85c29f9c14052ffd";
+      sha256 = "0nl9kwys0bkzfip5p49w0f3xpj0lmkq3x9a9c3qwnp594h5qcwam";
     };
     meta.homepage = "https://github.com/lewis6991/satellite.nvim/";
   };
@@ -7510,7 +7546,7 @@ final: prev:
       owner = "codota";
       repo = "tabnine-vim";
       rev = "e27face391a4d9a3e43ff251010f77deddf0c88d";
-      sha256 = "1y5haygvixnav9cck49yvvm14afyy5gyq8rwiybqvkd6vfxlv99f";
+      sha256 = "1204ibnsdksihyvnql22sarn2xgqajwvr0d975bnp35n593chymq";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/codota/tabnine-vim/";
@@ -7867,16 +7903,28 @@ final: prev:
 
   telescope-nvim = buildVimPluginFrom2Nix {
     pname = "telescope.nvim";
-    version = "2022-10-26";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "nvim-telescope";
       repo = "telescope.nvim";
-      rev = "97847309cbffbb33e442f07b8877d20322a26922";
-      sha256 = "16haarhd71n6p0ndkl67casbk3ysbxbnsm9dkqaa4cjizdqckbj0";
+      rev = "4bd4205028d6588cf2e0a1346687a6039b0f0a7c";
+      sha256 = "1vs8jgxam37qrxsxgda2fw4b1qb720wvzjwyq9d5c0hbzv7iqz2b";
     };
     meta.homepage = "https://github.com/nvim-telescope/telescope.nvim/";
   };
 
+  telescope_hoogle = buildVimPluginFrom2Nix {
+    pname = "telescope_hoogle";
+    version = "2022-10-27";
+    src = fetchFromGitHub {
+      owner = "luc-tielen";
+      repo = "telescope_hoogle";
+      rev = "6322f74655a2773974377a8fc8d170c00f24938f";
+      sha256 = "1pjq5bwnrxb3qhvvqd9v996hqfkbg5ah7qmbzrq1287h13m5jy2n";
+    };
+    meta.homepage = "https://github.com/luc-tielen/telescope_hoogle/";
+  };
+
   template-string-nvim = buildVimPluginFrom2Nix {
     pname = "template-string.nvim";
     version = "2022-08-18";
@@ -8035,12 +8083,12 @@ final: prev:
 
   todo-comments-nvim = buildVimPluginFrom2Nix {
     pname = "todo-comments.nvim";
-    version = "2022-10-27";
+    version = "2022-10-28";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "todo-comments.nvim";
-      rev = "1814feca54540497de99d474dd6c9de6b691cf01";
-      sha256 = "0qlbdmrq0c3fxc6d3rfwq6nckj4cg8ws9p98kwsx1s39ia56ycqf";
+      rev = "530eb3a896e9eef270f00f4baafa102361afc93b";
+      sha256 = "1bk1mdna3f792b48xasxmkwgyyb49dg6b6vd1bal3z461sk8zi7j";
     };
     meta.homepage = "https://github.com/folke/todo-comments.nvim/";
   };
@@ -8084,12 +8132,12 @@ final: prev:
 
   tokyonight-nvim = buildVimPluginFrom2Nix {
     pname = "tokyonight.nvim";
-    version = "2022-10-27";
+    version = "2022-10-28";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "tokyonight.nvim";
-      rev = "8756c99d08f3605534600e70f9fae64035a287dc";
-      sha256 = "1g7j3fzvs94bi67h277xmjd6rafsqbs58fsgrc0jlhi1zhbablr3";
+      rev = "29e2c689c10679f723ae1deadf7f0067d394a545";
+      sha256 = "06c1zav7w3izc543iwp0q02zy8qdajx34ifrwqb8ih6mvs0zbav6";
     };
     meta.homepage = "https://github.com/folke/tokyonight.nvim/";
   };
@@ -9104,12 +9152,12 @@ final: prev:
 
   vim-closer = buildVimPluginFrom2Nix {
     pname = "vim-closer";
-    version = "2022-08-08";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "rstacruz";
       repo = "vim-closer";
-      rev = "6d5d6f50501dd862b1616d370566e94b44be3008";
-      sha256 = "06j0z8lqbrp22skhdg6cmvd42nnlhd7v9q7z9938i7zr6bigj0cr";
+      rev = "6007d9db0a35e983af246b667282606612076b07";
+      sha256 = "117g4a8rl2m6b83yjicq3ghiy568z5s1mlcwi4k6w45mm21lpd5v";
     };
     meta.homepage = "https://github.com/rstacruz/vim-closer/";
   };
@@ -9212,12 +9260,12 @@ final: prev:
 
   vim-commentary = buildVimPluginFrom2Nix {
     pname = "vim-commentary";
-    version = "2022-03-27";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-commentary";
-      rev = "3654775824337f466109f00eaf6759760f65be34";
-      sha256 = "09iv58r0z3dv5fd6g8zq542rc5hz81gd5h0ncnvhx9drrl6f86ip";
+      rev = "e87cd90dc09c2a203e13af9704bd0ef79303d755";
+      sha256 = "09kzc89iwkgsi4wvjxk56fis462kkz5chcl9sl4hdbmpa1f41wy0";
     };
     meta.homepage = "https://github.com/tpope/vim-commentary/";
   };
@@ -9284,12 +9332,12 @@ final: prev:
 
   vim-css-color = buildVimPluginFrom2Nix {
     pname = "vim-css-color";
-    version = "2021-12-29";
+    version = "2022-10-28";
     src = fetchFromGitHub {
       owner = "ap";
       repo = "vim-css-color";
-      rev = "8bf943681f92c81a8cca19762a1ccec8bc29098a";
-      sha256 = "061x58afpl7f17ixp3sal54aymhsn0kyygdbvaqxzanzmrsgp8m7";
+      rev = "1c4b78f5512980227ca747e76f1f6c904f2eb3dc";
+      sha256 = "03r3sllai2nn3zhyc2v3cyxmpxw6incv9jfy74nr2p94yz9yasqh";
     };
     meta.homepage = "https://github.com/ap/vim-css-color/";
   };
@@ -9332,12 +9380,12 @@ final: prev:
 
   vim-dadbod = buildVimPluginFrom2Nix {
     pname = "vim-dadbod";
-    version = "2022-10-13";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-dadbod";
-      rev = "69c419194ee708a58a297d567bdcfd3dcf606574";
-      sha256 = "0qng34n5sm01qs4pyfsx1nl7lhjhxkzcz7bx5747c041hb1ia3jm";
+      rev = "87785156a7919f51409f3e6656ea2b3a9e0e8e97";
+      sha256 = "0rbrp8cnkngfnvfvrfv2nfs3c7ryyv9zs738xay15nmcgif4by1s";
     };
     meta.homepage = "https://github.com/tpope/vim-dadbod/";
   };
@@ -9776,12 +9824,12 @@ final: prev:
 
   vim-floaterm = buildVimPluginFrom2Nix {
     pname = "vim-floaterm";
-    version = "2022-10-21";
+    version = "2022-10-30";
     src = fetchFromGitHub {
       owner = "voldikss";
       repo = "vim-floaterm";
-      rev = "b91fcd9fd69cd6a76fe430622637870255fe7715";
-      sha256 = "0qfdsjjq8xfnaskr8rai0nh7535zii4w44pn2lcz4szm8za3y1ks";
+      rev = "20cbfc777b783fd93259c83c96eef4a35c6ddbcd";
+      sha256 = "02zwq4hq7zpqhmkir16bms8agvydc6fy51sgw6ycqib0hvsb34cd";
     };
     meta.homepage = "https://github.com/voldikss/vim-floaterm/";
   };
@@ -9848,12 +9896,12 @@ final: prev:
 
   vim-fugitive = buildVimPluginFrom2Nix {
     pname = "vim-fugitive";
-    version = "2022-09-04";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-fugitive";
-      rev = "dd8107cabf5fe85df94d5eedcae52415e543f208";
-      sha256 = "19xrmyrqfxsx7damlbl0dd5dsr75jinmssvpvnamixzjzq6jyfr3";
+      rev = "01f3e0af928857128eec8d998948b80ed1678c18";
+      sha256 = "1pc40k8r1ps6dhilyfb1zxxlw5y401jcy97nvi573c9011yy4y2a";
     };
     meta.homepage = "https://github.com/tpope/vim-fugitive/";
   };
@@ -9992,12 +10040,12 @@ final: prev:
 
   vim-go = buildVimPluginFrom2Nix {
     pname = "vim-go";
-    version = "2022-09-03";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "fatih";
       repo = "vim-go";
-      rev = "22b2273cfe562ac1c1af976ce77f18a3b1776f3c";
-      sha256 = "0vhyz67shgl8bpp07q4r808fas83xa86kl4jh5qkyfvxd95nrrm9";
+      rev = "0550762a69a2ef13d9f723c9478155dbc6ad7ddb";
+      sha256 = "185ysbbipqf6fivryi4pxjmdm4vfn319w1mgm3xpg2920scybwbq";
     };
     meta.homepage = "https://github.com/fatih/vim-go/";
   };
@@ -10293,12 +10341,12 @@ final: prev:
 
   vim-illuminate = buildVimPluginFrom2Nix {
     pname = "vim-illuminate";
-    version = "2022-10-04";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "RRethy";
       repo = "vim-illuminate";
-      rev = "0603e75fc4ecde1ee5a1b2fc8106ed6704f34d14";
-      sha256 = "01361ss6g7kcap7hjma9ij8xa75zlvy878s4p7r5sxxbdwwpqarg";
+      rev = "7a4eccd0fffe8b5dd14ad0d0400d3eab6d80c4b3";
+      sha256 = "0a0d16vjr23a3q6mmz653xn1hmnd7h8dbkldvmsr4dx0spqfydp8";
     };
     meta.homepage = "https://github.com/RRethy/vim-illuminate/";
   };
@@ -10726,12 +10774,12 @@ final: prev:
 
   vim-lsp = buildVimPluginFrom2Nix {
     pname = "vim-lsp";
-    version = "2022-10-25";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "prabirshrestha";
       repo = "vim-lsp";
-      rev = "9d4dbf7e689af58b1289cb1be9d755dc96b0de04";
-      sha256 = "1xv236fyj6nxvn5afs18yxpkx38h9cfvl21rn81ikjvvim1vz9h7";
+      rev = "0c8fda792177375ee90c03598adb1783c05bed83";
+      sha256 = "0lvh0g8bqnyxpqk51iwbdqayy4dmh6hbfg7ha23mslhscl1b3zga";
     };
     meta.homepage = "https://github.com/prabirshrestha/vim-lsp/";
   };
@@ -10762,12 +10810,12 @@ final: prev:
 
   vim-maktaba = buildVimPluginFrom2Nix {
     pname = "vim-maktaba";
-    version = "2022-06-17";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "google";
       repo = "vim-maktaba";
-      rev = "80b47c5f636c0ed0915af378b47428a83346a699";
-      sha256 = "1fmq4zcx8shrkw1p2sjhncy3g7j4zka4rvr97jplf8fv40yqql1i";
+      rev = "88ad116a4b2b4777ce4d0ecf214963a0c9b4fd06";
+      sha256 = "07mhpr326rjfh47izx4c9hdkb5zhpbl01k0h4bbi1lxbzvsxgs9k";
     };
     meta.homepage = "https://github.com/google/vim-maktaba/";
   };
@@ -10859,12 +10907,12 @@ final: prev:
 
   vim-merginal = buildVimPluginFrom2Nix {
     pname = "vim-merginal";
-    version = "2022-10-04";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "idanarye";
       repo = "vim-merginal";
-      rev = "e8740401cdec9199f4676c5a640a785ec094258b";
-      sha256 = "09rmmqq9a3xjcplw69kxsqbv3bpdkw1zvdiiihl499vafwrhky6w";
+      rev = "8ec5976aa4bd647c64504ff535eb06a8b709b051";
+      sha256 = "0z43gdgm3vjbq4whwj6dm218fldkjlhp5kwks79w6x6rx84nnj6v";
     };
     meta.homepage = "https://github.com/idanarye/vim-merginal/";
   };
@@ -11951,12 +11999,12 @@ final: prev:
 
   vim-slime = buildVimPluginFrom2Nix {
     pname = "vim-slime";
-    version = "2022-10-08";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "jpalardy";
       repo = "vim-slime";
-      rev = "9cdd180a6056e8ae0c7d3581313344b9a3e8e7e8";
-      sha256 = "02f8lmyrp60myj624aqgdqg91l19rfs32gds3d2y411w0p77kzbl";
+      rev = "55e8604bda53f11cbce5d2b976bacb157de70297";
+      sha256 = "19r7hx4xkw3b8fc81gp1sqc4xk3w2i55mpcbsrjr1mjyjwydjb84";
     };
     meta.homepage = "https://github.com/jpalardy/vim-slime/";
   };
@@ -12107,12 +12155,12 @@ final: prev:
 
   vim-startuptime = buildVimPluginFrom2Nix {
     pname = "vim-startuptime";
-    version = "2022-10-25";
+    version = "2022-10-30";
     src = fetchFromGitHub {
       owner = "dstein64";
       repo = "vim-startuptime";
-      rev = "fcfa65f98046248ba2ec88ebab756b6d4e42bbc2";
-      sha256 = "0rhjyiqnmfmn7sm54wg5v6j3n227ixjik29a4rllscrb1s9x91n9";
+      rev = "a1e294454128062236d758cdaefee66664051a6c";
+      sha256 = "0n35b7v4j95nj1n1h1j6xnp785dqm4k9fm4cpb9lx9kaf3168a7q";
     };
     meta.homepage = "https://github.com/dstein64/vim-startuptime/";
   };
@@ -12456,12 +12504,12 @@ final: prev:
 
   vim-tpipeline = buildVimPluginFrom2Nix {
     pname = "vim-tpipeline";
-    version = "2022-10-23";
+    version = "2022-10-30";
     src = fetchFromGitHub {
       owner = "vimpostor";
       repo = "vim-tpipeline";
-      rev = "abd013d512e58b3770fab65a3230cd840a24475c";
-      sha256 = "0h8xa2b9q7j91x0cvsscfyqkvfzf7rx3cqs59hxxvpcw96l4qwlx";
+      rev = "b8bb357570b2d95bf893345d45fed722808571ef";
+      sha256 = "145crqkr4b588k64y1rczhy5ygwada8rzsrfa3gvv6xrhkya6sgg";
     };
     meta.homepage = "https://github.com/vimpostor/vim-tpipeline/";
   };
@@ -12478,6 +12526,18 @@ final: prev:
     meta.homepage = "https://github.com/bronson/vim-trailing-whitespace/";
   };
 
+  vim-tridactyl = buildVimPluginFrom2Nix {
+    pname = "vim-tridactyl";
+    version = "2022-02-10";
+    src = fetchFromGitHub {
+      owner = "tridactyl";
+      repo = "vim-tridactyl";
+      rev = "f2eaa5d32614f6c35dad268dd4ed7ff33cae5070";
+      sha256 = "139kl89k5alh8bpa4wywsmvjnxlxzsdbhxn2w8rvclhwgrhkzvgd";
+    };
+    meta.homepage = "https://github.com/tridactyl/vim-tridactyl/";
+  };
+
   vim-tsx = buildVimPluginFrom2Nix {
     pname = "vim-tsx";
     version = "2017-03-16";
@@ -12624,24 +12684,24 @@ final: prev:
 
   vim-vsnip = buildVimPluginFrom2Nix {
     pname = "vim-vsnip";
-    version = "2022-10-23";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "vim-vsnip";
-      rev = "03010115eb8bdda00ce5f845cc2f7025700e33bb";
-      sha256 = "1m6blqw8rii859gs7d17x50nbb4f50g2s4a56j3j2qyv1k05kafn";
+      rev = "ceeee48145d27f0b3986ab6f75f52a2449974603";
+      sha256 = "0zf9ki5lsn1zmnqsb31kl7x3pkd5bwrqvldp7bp00zwp2fj2z79i";
     };
     meta.homepage = "https://github.com/hrsh7th/vim-vsnip/";
   };
 
   vim-vsnip-integ = buildVimPluginFrom2Nix {
     pname = "vim-vsnip-integ";
-    version = "2022-10-20";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "vim-vsnip-integ";
-      rev = "4be94fb2a0d51b2fdf1a508d31cf62b3bff48e6d";
-      sha256 = "0gza8nxzs6qc2w66fa1rjsgrhkmgllfflnf1jhrqn5rsdcq7fs0y";
+      rev = "09fc81155166e07e4a24863894cc0108032a236f";
+      sha256 = "1bkiif2i2vy28y8pr8kakzin01jfvh53lfkgpraccsi331ncrfcq";
     };
     meta.homepage = "https://github.com/hrsh7th/vim-vsnip-integ/";
   };
@@ -12696,12 +12756,12 @@ final: prev:
 
   vim-which-key = buildVimPluginFrom2Nix {
     pname = "vim-which-key";
-    version = "2022-10-25";
+    version = "2022-10-30";
     src = fetchFromGitHub {
       owner = "liuchengxu";
       repo = "vim-which-key";
-      rev = "9875baefb1d3e78abbf8f652a17e130744a37742";
-      sha256 = "1xvb9xfp9ly210cxj00hp9403ny6r7cs0qhjd0kvcdgxamw1bh3a";
+      rev = "398adc5bf2918ee84e78bd974a9f9d64ddfc0801";
+      sha256 = "18kjcw8jdidihfscir5kihz22mvlwkbab1w5m8hc2w9qjljcza50";
     };
     meta.homepage = "https://github.com/liuchengxu/vim-which-key/";
   };
@@ -12948,12 +13008,12 @@ final: prev:
 
   vimspector = buildVimPluginFrom2Nix {
     pname = "vimspector";
-    version = "2022-10-27";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "puremourning";
       repo = "vimspector";
-      rev = "82b47b18262d70de140221f69279d80a2f096221";
-      sha256 = "05h67zk7lj52ry0clb0dqqiniscmyb49x46ss8zgi0dmfnp3avav";
+      rev = "5c328b513485675c061558d2f25a98ee503cb243";
+      sha256 = "0wwkz7prh7zabvna0imbx24byx3ky2hzia5jg03na0z8g1djm3vv";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/puremourning/vimspector/";
@@ -12961,12 +13021,12 @@ final: prev:
 
   vimtex = buildVimPluginFrom2Nix {
     pname = "vimtex";
-    version = "2022-10-27";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "lervag";
       repo = "vimtex";
-      rev = "2f799f47a85bca75deaec4e2c6a51cde9341ae01";
-      sha256 = "0m1j5xl994g5bxv5jnzk3a2sfga96b2k0kznwj8a6xqilk8gq798";
+      rev = "e148cf1fdc817b6668263817634538d09bafd115";
+      sha256 = "15iikf6w8x75g7wjdp469rsxraz883387cxlahc0zsl0bdbylv5q";
     };
     meta.homepage = "https://github.com/lervag/vimtex/";
   };
@@ -12997,12 +13057,12 @@ final: prev:
 
   virtual-types-nvim = buildVimPluginFrom2Nix {
     pname = "virtual-types.nvim";
-    version = "2022-03-17";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "jubnzv";
       repo = "virtual-types.nvim";
-      rev = "31da847fa54b801f309a08123935626adda4aaad";
-      sha256 = "0kqg29xld064fz1xly1kc7wcyck62q5hjkb5fc5vrj0zdnrdzz22";
+      rev = "12d55d6dc7cebddf4ab276b5934e02e0d41416a1";
+      sha256 = "14sk39py8kv9fsrw3sj6xg26mj11nf5aafqgiyc46isilmhizh4n";
     };
     meta.homepage = "https://github.com/jubnzv/virtual-types.nvim/";
   };
@@ -13069,12 +13129,12 @@ final: prev:
 
   which-key-nvim = buildVimPluginFrom2Nix {
     pname = "which-key.nvim";
-    version = "2022-10-26";
+    version = "2022-10-28";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "which-key.nvim";
-      rev = "1b7f09a38afb48e295109137790c3a3099881c2f";
-      sha256 = "0hzh53ahx96kzhhz9rhxakvdqzy0k2px5693wi3fg9q7i67v945x";
+      rev = "61553aeb3d5ca8c11eea8be6eadf478062982ac9";
+      sha256 = "11wvm95484axpjzar8y3pc8ah9162gn6s63yhn7z7y4c7zm4zci1";
     };
     meta.homepage = "https://github.com/folke/which-key.nvim/";
   };
@@ -13212,6 +13272,18 @@ final: prev:
     meta.homepage = "https://github.com/HerringtonDarkholme/yats.vim/";
   };
 
+  yuck-vim = buildVimPluginFrom2Nix {
+    pname = "yuck.vim";
+    version = "2022-10-29";
+    src = fetchFromGitHub {
+      owner = "elkowar";
+      repo = "yuck.vim";
+      rev = "9b5e0370f70cc30383e1dabd6c215475915fe5c3";
+      sha256 = "1mkf0vd8vvw1njlczlgai80djw1n1a7dl1k940l089d3vvqr5dhp";
+    };
+    meta.homepage = "https://github.com/elkowar/yuck.vim/";
+  };
+
   zeavim-vim = buildVimPluginFrom2Nix {
     pname = "zeavim.vim";
     version = "2019-06-07";
@@ -13310,12 +13382,12 @@ final: prev:
 
   catppuccin-nvim = buildVimPluginFrom2Nix {
     pname = "catppuccin-nvim";
-    version = "2022-10-27";
+    version = "2022-10-31";
     src = fetchFromGitHub {
       owner = "catppuccin";
       repo = "nvim";
-      rev = "e695645298320e9714d10897aadee3cb5951567a";
-      sha256 = "0pbyq5z3l9sqfs412vfgg3s729smb04fvvgn673ib28i5kc5qk09";
+      rev = "c4f0f1a88304378cb76ac0a0c00a99f6d58f972f";
+      sha256 = "0mb3qhg5aaxvkc8h95sbwg5nm89w719l9apymc5rpmis4r0mr5zg";
     };
     meta.homepage = "https://github.com/catppuccin/nvim/";
   };
@@ -13334,24 +13406,24 @@ final: prev:
 
   chad = buildVimPluginFrom2Nix {
     pname = "chad";
-    version = "2022-10-27";
+    version = "2022-11-01";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "chadtree";
-      rev = "830c86fb0d6096a0a3ff87855a574bb686f6fa97";
-      sha256 = "1b6b4hcyfjhbmwlq7h63ahb19zxla0kcb5xq9g2jfkvx4j0n2k4k";
+      rev = "d7b2c15268ffbb4dedebbda34b702c89b2cd782a";
+      sha256 = "1r53lz0vmfii82mchh0hlzs0zg7d7sjxiihv2bwlapwzwmdp2n4k";
     };
     meta.homepage = "https://github.com/ms-jpq/chadtree/";
   };
 
   dracula-vim = buildVimPluginFrom2Nix {
     pname = "dracula-vim";
-    version = "2022-10-24";
+    version = "2022-10-29";
     src = fetchFromGitHub {
       owner = "dracula";
       repo = "vim";
-      rev = "7ebadce59c087f441b7baacff68e1667386d119a";
-      sha256 = "1i0gxwih7sc4mkhdg6g7cldx1fgpdy16lnqz2a03d1icfddbyp7n";
+      rev = "834f54c1e09a4ae7115f590ad26d470ccd67c3b4";
+      sha256 = "1m1gzj2npmx31hpmhc05i17lqikbk3v2k3zf10rls6ipgz4lfsz3";
     };
     meta.homepage = "https://github.com/dracula/vim/";
   };
diff --git a/pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix b/pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix
new file mode 100644
index 0000000000000..e818eff764a86
--- /dev/null
+++ b/pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix
@@ -0,0 +1,1374 @@
+# generated by pkgs/applications/editors/vim/plugins/nvim-treesitter/update.py
+
+{ buildGrammar, fetchFromGitHub, fetchFromGitLab, fetchgit, nodejs, tree-sitter }:
+
+{
+  agda = buildGrammar {
+    language = "agda";
+    version = "80ea622";
+    source = fetchFromGitHub {
+      owner = "AusCyberman";
+      repo = "tree-sitter-agda";
+      rev = "80ea622cf952a0059e168e5c92a798b2f1925652";
+      hash = "sha256-D63jvITL2RA8yg/TBSi6GsOxwLKzSHibbm3hwIKzesU=";
+    };
+  };
+  astro = buildGrammar {
+    language = "astro";
+    version = "947e930";
+    source = fetchFromGitHub {
+      owner = "virchau13";
+      repo = "tree-sitter-astro";
+      rev = "947e93089e60c66e681eba22283f4037841451e7";
+      hash = "sha256-q1ni++SPbq5y+47fPb6TryMw86gpULwNcXwi5yjXCWI=";
+    };
+  };
+  bash = buildGrammar {
+    language = "bash";
+    version = "f1a86d3";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-bash";
+      rev = "f1a86d3cc5aeeb67e0e52442e893af7f813025b4";
+      hash = "sha256-zzHA+kGw67WFyPVFRWRyKmhAjxp5jkv0K2yhGxNfFM4=";
+    };
+  };
+  beancount = buildGrammar {
+    language = "beancount";
+    version = "4cbd1f0";
+    source = fetchFromGitHub {
+      owner = "polarmutex";
+      repo = "tree-sitter-beancount";
+      rev = "4cbd1f09cd07c1f1fabf867c2cf354f9da53cc4c";
+      hash = "sha256-Uh9/yBYXNKBvdpqNv1kr5eREYmKy3Z/kvaSZQpUl+0U=";
+    };
+  };
+  bibtex = buildGrammar {
+    language = "bibtex";
+    version = "ccfd77d";
+    source = fetchFromGitHub {
+      owner = "latex-lsp";
+      repo = "tree-sitter-bibtex";
+      rev = "ccfd77db0ed799b6c22c214fe9d2937f47bc8b34";
+      hash = "sha256-wgduSxlpbJy/ITenBLfj5lhziUM1BApX6MjXhWcb7lQ=";
+    };
+  };
+  blueprint = buildGrammar {
+    language = "blueprint";
+    version = "6ef91ca";
+    source = fetchFromGitLab {
+      owner = "gabmus";
+      repo = "tree-sitter-blueprint";
+      rev = "6ef91ca8270f0112b9c6d27ecb9966c741a5d103";
+      hash = "sha256-E7SWUWQFlFWXfmdqNXt2eKkvFusnBUILHerQEFj2JTg=";
+    };
+  };
+  c = buildGrammar {
+    language = "c";
+    version = "7175a6d";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-c";
+      rev = "7175a6dd5fc1cee660dce6fe23f6043d75af424a";
+      hash = "sha256-G9kVqX8walvpI7gPvPzS8g7X8RVM9y5wJHGOcyjJA/A=";
+    };
+  };
+  c_sharp = buildGrammar {
+    language = "c_sharp";
+    version = "5b60f99";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-c-sharp";
+      rev = "5b60f99545fea00a33bbfae5be956f684c4c69e2";
+      hash = "sha256-4R6+15ZbtC/LtSHpk7DqcMiFYjht+062Av31spK07rc=";
+    };
+  };
+  clojure = buildGrammar {
+    language = "clojure";
+    version = "087bac7";
+    source = fetchFromGitHub {
+      owner = "sogaiu";
+      repo = "tree-sitter-clojure";
+      rev = "087bac78c53fe1387756cd5b8e68a69b3f6d7244";
+      hash = "sha256-KiuSAchtqlVlwyBL4rU+p0fPjm52DrNDPq2ETVXOHQU=";
+    };
+  };
+  cmake = buildGrammar {
+    language = "cmake";
+    version = "6e51463";
+    source = fetchFromGitHub {
+      owner = "uyha";
+      repo = "tree-sitter-cmake";
+      rev = "6e51463ef3052dd3b328322c22172eda093727ad";
+      hash = "sha256-2xJaDgrCJQ2obGYvhsHk2/2p8lFNwuScjbjdxJihh5I=";
+    };
+  };
+  comment = buildGrammar {
+    language = "comment";
+    version = "a37ca37";
+    source = fetchFromGitHub {
+      owner = "stsewd";
+      repo = "tree-sitter-comment";
+      rev = "a37ca370310ac6f89b6e0ebf2b86b2219780494e";
+      hash = "sha256-wiFY2uMNv8Wet3qKh0bSe8FSO1sjGu1uTOBxnt/HHHg=";
+    };
+  };
+  commonlisp = buildGrammar {
+    language = "commonlisp";
+    version = "c7e8149";
+    source = fetchFromGitHub {
+      owner = "theHamsta";
+      repo = "tree-sitter-commonlisp";
+      rev = "c7e814975ab0d0d04333d1f32391c41180c58919";
+      hash = "sha256-63B9d5feHzwY7WDoeoPAwsuLYgVvoGQf0wkUdDO/A8M=";
+    };
+  };
+  cooklang = buildGrammar {
+    language = "cooklang";
+    version = "5e11341";
+    source = fetchFromGitHub {
+      owner = "addcninblue";
+      repo = "tree-sitter-cooklang";
+      rev = "5e113412aadb78955c27010daa4dbe1d202013cf";
+      hash = "sha256-Ny55gdN+3o7bFJEnXvctstl6gjqkwrp1uE33OobyH7U=";
+    };
+  };
+  cpp = buildGrammar {
+    language = "cpp";
+    version = "5ead1e2";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-cpp";
+      rev = "5ead1e26c6ab71919db0f1880c46a278a93bc5ea";
+      hash = "sha256-h6mJdmQzJlxYIcY+d5IiaFghraUgBGZwqFPKwB3E4pQ=";
+    };
+  };
+  css = buildGrammar {
+    language = "css";
+    version = "769203d";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-css";
+      rev = "769203d0f9abe1a9a691ac2b9fe4bb4397a73c51";
+      hash = "sha256-5Qti/bFac2A1PJxqZEOuSLK3GGKYwPDKAp3OOassBxU=";
+    };
+  };
+  cuda = buildGrammar {
+    language = "cuda";
+    version = "7f1a79e";
+    source = fetchFromGitHub {
+      owner = "theHamsta";
+      repo = "tree-sitter-cuda";
+      rev = "7f1a79e612160aa02be87f1a24469ae3655fe818";
+      hash = "sha256-zBlv/KyUPNHRA8fKWaDgCeE1AX3EYTkwjo/RYHaKjK0=";
+    };
+  };
+  d = buildGrammar {
+    language = "d";
+    version = "c2fbf21";
+    source = fetchFromGitHub {
+      owner = "CyberShadow";
+      repo = "tree-sitter-d";
+      nativeBuildInputs = [ nodejs tree-sitter ];
+      postFetch = "pushd $out && tree-sitter generate && popd";
+      rev = "c2fbf21bd3aa45495fe13247e040ad5815250032";
+      hash = "sha256-JOCS72Ux1FMzf6kBVO7aqHNwJ0s3xkhzIFFV9GjJVOs=";
+    };
+  };
+  dart = buildGrammar {
+    language = "dart";
+    version = "53485a8";
+    source = fetchFromGitHub {
+      owner = "UserNobody14";
+      repo = "tree-sitter-dart";
+      rev = "53485a8f301254e19c518aa20c80f1bcf7cf5c62";
+      hash = "sha256-1IcvFcxIkcrOuq6bypD08PeYw6J/pL/MbYPt+dKHQbc=";
+    };
+  };
+  devicetree = buildGrammar {
+    language = "devicetree";
+    version = "ea30a05";
+    source = fetchFromGitHub {
+      owner = "joelspadin";
+      repo = "tree-sitter-devicetree";
+      nativeBuildInputs = [ nodejs tree-sitter ];
+      postFetch = "pushd $out && tree-sitter generate && popd";
+      rev = "ea30a05d0f0446a96d8b096ad11828ad4f8ad849";
+      hash = "sha256-AZ0MAGVfeVhRHEbiqQrDpKzZsb9AMHBXC9uOJVla2fk=";
+    };
+  };
+  diff = buildGrammar {
+    language = "diff";
+    version = "330eb64";
+    source = fetchFromGitHub {
+      owner = "the-mikedavis";
+      repo = "tree-sitter-diff";
+      rev = "330eb648bbc257b4e91621e82a85372be7dde27a";
+      hash = "sha256-WK6pEUvIu6Xwsy5RuuUyNWLuSKkNkWh5R0hmyksIu8k=";
+    };
+  };
+  dockerfile = buildGrammar {
+    language = "dockerfile";
+    version = "25c71d6";
+    source = fetchFromGitHub {
+      owner = "camdencheek";
+      repo = "tree-sitter-dockerfile";
+      rev = "25c71d6a24cdba8f0c74ef40d4d2d93defd7e196";
+      hash = "sha256-Y6RvFXKryFH+NF87YKa8QIgB+Dh871cfuM/em0b4ks4=";
+    };
+  };
+  dot = buildGrammar {
+    language = "dot";
+    version = "9ab8555";
+    source = fetchFromGitHub {
+      owner = "rydesun";
+      repo = "tree-sitter-dot";
+      rev = "9ab85550c896d8b294d9b9ca1e30698736f08cea";
+      hash = "sha256-w4DInIT7mkTvQ6Hmi8yaAww6ktyNgRz0tPfBLGnOawQ=";
+    };
+  };
+  eex = buildGrammar {
+    language = "eex";
+    version = "f742f2f";
+    source = fetchFromGitHub {
+      owner = "connorlay";
+      repo = "tree-sitter-eex";
+      rev = "f742f2fe327463335e8671a87c0b9b396905d1d1";
+      hash = "sha256-UPq62MkfGFh9m/UskoB9uBDIYOcotITCJXDyrbg/wKY=";
+    };
+  };
+  elixir = buildGrammar {
+    language = "elixir";
+    version = "b20eaa7";
+    source = fetchFromGitHub {
+      owner = "elixir-lang";
+      repo = "tree-sitter-elixir";
+      rev = "b20eaa75565243c50be5e35e253d8beb58f45d56";
+      hash = "sha256-BxFqSZIrDQFMCl+t88/j6ykpdD+ag5uIIWLrEWcHDMQ=";
+    };
+  };
+  elm = buildGrammar {
+    language = "elm";
+    version = "28bb193";
+    source = fetchFromGitHub {
+      owner = "elm-tooling";
+      repo = "tree-sitter-elm";
+      rev = "28bb193640d916dfaf947912c1413cebb0484841";
+      hash = "sha256-Ijw9Ov8+IBLl0fQlkuH6rQ6E7tlKeD+huj0GZdz6XH8=";
+    };
+  };
+  elvish = buildGrammar {
+    language = "elvish";
+    version = "f32711e";
+    source = fetchFromGitHub {
+      owner = "ckafi";
+      repo = "tree-sitter-elvish";
+      rev = "f32711e31e987fd5c2c002f3daba02f25c68672f";
+      hash = "sha256-/3npcIfTH8w5ekLTb//ZCTxuSGhOXkUBaCq3WWcK2J4=";
+    };
+  };
+  embedded_template = buildGrammar {
+    language = "embedded_template";
+    version = "1a538da";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-embedded-template";
+      rev = "1a538da253d73f896b9f6c0c7d79cda58791ac5c";
+      hash = "sha256-vebevlTAISkHhNcv89tzSXJX3DsGakxWaxxmv9KU40g=";
+    };
+  };
+  erlang = buildGrammar {
+    language = "erlang";
+    version = "3a9c769";
+    source = fetchFromGitHub {
+      owner = "AbstractMachinesLab";
+      repo = "tree-sitter-erlang";
+      rev = "3a9c769444f08bbccce03845270efac0c641c5e7";
+      hash = "sha256-ZsjHTNUfTEPo3Wb1ihW0M2YTWK6mpNhxQG/nLfMaG4I=";
+    };
+  };
+  fennel = buildGrammar {
+    language = "fennel";
+    version = "5171959";
+    source = fetchFromGitHub {
+      owner = "travonted";
+      repo = "tree-sitter-fennel";
+      rev = "517195970428aacca60891b050aa53eabf4ba78d";
+      hash = "sha256-7bmrLJunNAus8XbBcBiTS5enhSzZ1mecAAyqlZUtSgo=";
+    };
+  };
+  fish = buildGrammar {
+    language = "fish";
+    version = "84436cf";
+    source = fetchFromGitHub {
+      owner = "ram02z";
+      repo = "tree-sitter-fish";
+      rev = "84436cf24c2b3176bfbb220922a0fdbd0141e406";
+      hash = "sha256-oJuCd+2mTCEP/rNQzweShc7TZiqwKBIDRQqnV8VqQ4s=";
+    };
+  };
+  foam = buildGrammar {
+    language = "foam";
+    version = "fdb7f14";
+    source = fetchFromGitHub {
+      owner = "FoamScience";
+      repo = "tree-sitter-foam";
+      rev = "fdb7f14b885abfc4df57728c9b2a2f2ad24d3cb7";
+      hash = "sha256-E5Fr8185ypZbkaGIDE9lhQ0Vf1Dphx7n5suNkK0AFHU=";
+    };
+  };
+  fortran = buildGrammar {
+    language = "fortran";
+    version = "f0f2f10";
+    source = fetchFromGitHub {
+      owner = "stadelmanma";
+      repo = "tree-sitter-fortran";
+      rev = "f0f2f100952a353e64e26b0fa710b4c296d7af13";
+      hash = "sha256-ylQLalRFqRu5N/lUxvwOds/UbLH2JJ7T/rOpo9H4MZ4=";
+    };
+  };
+  fusion = buildGrammar {
+    language = "fusion";
+    version = "19db2f4";
+    source = fetchFromGitLab {
+      owner = "jirgn";
+      repo = "tree-sitter-fusion";
+      rev = "19db2f47ba4c3a0f6238d4ae0e2abfca16e61dd6";
+      hash = "sha256-195q39pZYipT0G08kQlwnDE28ODjAz2/Sq1tzpEGFmU=";
+    };
+  };
+  gdscript = buildGrammar {
+    language = "gdscript";
+    version = "2a6abda";
+    source = fetchFromGitHub {
+      owner = "PrestonKnopp";
+      repo = "tree-sitter-gdscript";
+      rev = "2a6abdaa47fcb91397e09a97c7433fd995ea46c6";
+      hash = "sha256-YDLPYwWHnwqj7CpgUKRXQYj2a6ZJUKc0bcalVSJ99Ew=";
+    };
+  };
+  git_rebase = buildGrammar {
+    language = "git_rebase";
+    version = "127f5b5";
+    source = fetchFromGitHub {
+      owner = "the-mikedavis";
+      repo = "tree-sitter-git-rebase";
+      rev = "127f5b56c1ad3e8a449a7d6e0c7412ead7f7724c";
+      hash = "sha256-4XGQTrflV+txVjXbgaQSd6rFES8TkuiXEurJLBdg59E=";
+    };
+  };
+  gitattributes = buildGrammar {
+    language = "gitattributes";
+    version = "cee9f88";
+    source = fetchFromGitHub {
+      owner = "ObserverOfTime";
+      repo = "tree-sitter-gitattributes";
+      rev = "cee9f8865694b29bb9e85e0b90805f92ad3fc47e";
+      hash = "sha256-Ne9D4c58AWvZz/2ytP0lJzKIss2hJtZFgSKsot9MOJE=";
+    };
+  };
+  gitignore = buildGrammar {
+    language = "gitignore";
+    version = "f4685bf";
+    source = fetchFromGitHub {
+      owner = "shunsambongi";
+      repo = "tree-sitter-gitignore";
+      nativeBuildInputs = [ nodejs tree-sitter ];
+      postFetch = "pushd $out && tree-sitter generate && popd";
+      rev = "f4685bf11ac466dd278449bcfe5fd014e94aa504";
+      hash = "sha256-Jv/DMHq5wE9avZgaVg8dSgoDgzl50u0TEj8pITQ3iBc=";
+    };
+  };
+  gleam = buildGrammar {
+    language = "gleam";
+    version = "cfcbca3";
+    source = fetchFromGitHub {
+      owner = "J3RN";
+      repo = "tree-sitter-gleam";
+      rev = "cfcbca3f8f734773878e00d7bfcedea98eb10be2";
+      hash = "sha256-lwaTlIIh4jA92ECMuxV7NtebKrjJSNoXtCe90YIQ4eE=";
+    };
+  };
+  glimmer = buildGrammar {
+    language = "glimmer";
+    version = "abcc997";
+    source = fetchFromGitHub {
+      owner = "alexlafroscia";
+      repo = "tree-sitter-glimmer";
+      rev = "abcc9970da0ed0645741bf52ea70232374bc9e52";
+      hash = "sha256-kkNnyaAXeZJ770Jl4mmOdyXvq6bQd/9Q6eVyr+JV2jY=";
+    };
+  };
+  glsl = buildGrammar {
+    language = "glsl";
+    version = "a743ada";
+    source = fetchFromGitHub {
+      owner = "theHamsta";
+      repo = "tree-sitter-glsl";
+      rev = "a743ada24fa17da9acc5665133f07d56e03530be";
+      hash = "sha256-l2t2U4fZYMMpc1Nkv8JODtDny0/kSUsbiJ/VVD5VyhI=";
+    };
+  };
+  go = buildGrammar {
+    language = "go";
+    version = "05900fa";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-go";
+      rev = "05900faa3cdb5d2d8c8bd5e77ee698487e0a8611";
+      hash = "sha256-f885YTswEDH/QfRPUxcLp/1E2zXLKl25R9IyTGKb1eM=";
+    };
+  };
+  godot_resource = buildGrammar {
+    language = "godot_resource";
+    version = "b6ef076";
+    source = fetchFromGitHub {
+      owner = "PrestonKnopp";
+      repo = "tree-sitter-godot-resource";
+      nativeBuildInputs = [ nodejs tree-sitter ];
+      postFetch = "pushd $out && tree-sitter generate && popd";
+      rev = "b6ef0768711086a86b3297056f9ffb5cc1d77b4a";
+      hash = "sha256-u3YcGCtFV0Kz6+604XJQOXiqncgU8LBVKROOiVMZrC0=";
+    };
+  };
+  gomod = buildGrammar {
+    language = "gomod";
+    version = "4a65743";
+    source = fetchFromGitHub {
+      owner = "camdencheek";
+      repo = "tree-sitter-go-mod";
+      rev = "4a65743dbc2bb3094114dd2b43da03c820aa5234";
+      hash = "sha256-znvUD/xqwSUeHCDxwXIgPXiB94bY1wEOjRQSvURcdME=";
+    };
+  };
+  gowork = buildGrammar {
+    language = "gowork";
+    version = "949a8a4";
+    source = fetchFromGitHub {
+      owner = "omertuc";
+      repo = "tree-sitter-go-work";
+      rev = "949a8a470559543857a62102c84700d291fc984c";
+      hash = "sha256-Tode7W05xaOKKD5QOp3rayFgLEOiMJUeGpVsIrizxto=";
+    };
+  };
+  graphql = buildGrammar {
+    language = "graphql";
+    version = "5e66e96";
+    source = fetchFromGitHub {
+      owner = "bkegley";
+      repo = "tree-sitter-graphql";
+      rev = "5e66e961eee421786bdda8495ed1db045e06b5fe";
+      hash = "sha256-NvE9Rpdp4sALqKSRWJpqxwl6obmqnIIdvrL1nK5peXc=";
+    };
+  };
+  hack = buildGrammar {
+    language = "hack";
+    version = "b7bd692";
+    source = fetchFromGitHub {
+      owner = "slackhq";
+      repo = "tree-sitter-hack";
+      rev = "b7bd6928532ada34dddb1dece4a158ab62c6e783";
+      hash = "sha256-TSbi4Ik/AjswuIdTaFfJ53S0c/qfq0JYPzVv07JASmc=";
+    };
+  };
+  haskell = buildGrammar {
+    language = "haskell";
+    version = "bee6b49";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-haskell";
+      rev = "bee6b49543e34c2967c6294a4b05e8bd2bf2da59";
+      hash = "sha256-/6WsOONbKS/5xM5xKa5i8LuWWkWiXZiLnOpvayj1Nxk=";
+    };
+  };
+  hcl = buildGrammar {
+    language = "hcl";
+    version = "45ce22c";
+    source = fetchFromGitHub {
+      owner = "MichaHoffmann";
+      repo = "tree-sitter-hcl";
+      rev = "45ce22c16ec924e34517cf785e23c07952e45893";
+      hash = "sha256-SczU8y70mdqDl2iVKTfD8Taq580x31xMswUhoU48yfE=";
+    };
+  };
+  heex = buildGrammar {
+    language = "heex";
+    version = "52b804b";
+    source = fetchFromGitHub {
+      owner = "connorlay";
+      repo = "tree-sitter-heex";
+      rev = "52b804b1cb2d57e58d90090326d3ef9bd19cf16c";
+      hash = "sha256-fuxvX0AM9FEXVdpXu9/H6y7N+S+q6X/QYuLqKdb8PGI=";
+    };
+  };
+  help = buildGrammar {
+    language = "help";
+    version = "8df3266";
+    source = fetchFromGitHub {
+      owner = "neovim";
+      repo = "tree-sitter-vimdoc";
+      rev = "8df3266b423d24c9ac3f3b4b9928e65eb1e5e741";
+      hash = "sha256-t9SHuymK5pYlryWGpORGPYLgPZ3xBx0XH69s5RtRnEI=";
+    };
+  };
+  hjson = buildGrammar {
+    language = "hjson";
+    version = "02fa3b7";
+    source = fetchFromGitHub {
+      owner = "winston0410";
+      repo = "tree-sitter-hjson";
+      rev = "02fa3b79b3ff9a296066da6277adfc3f26cbc9e0";
+      hash = "sha256-NsTf3DR3gHVMYZDmTNvThB5bJcDwTcJ1+3eJhvsiDn8=";
+    };
+  };
+  hlsl = buildGrammar {
+    language = "hlsl";
+    version = "384b26e";
+    source = fetchFromGitHub {
+      owner = "theHamsta";
+      repo = "tree-sitter-hlsl";
+      rev = "384b26ec65e10f26cf147bfcde772c50ca5ef0d0";
+      hash = "sha256-f6jKhC1vPpNTY0Rv1WMdJMNXRFiLsCApy/kIv7CBesA=";
+    };
+  };
+  hocon = buildGrammar {
+    language = "hocon";
+    version = "bb412e2";
+    source = fetchFromGitHub {
+      owner = "antosha417";
+      repo = "tree-sitter-hocon";
+      rev = "bb412e2633f4a3611a4e16efe58d917093bb4782";
+      hash = "sha256-ujVznEMWnhUjWZS+LAZZYba1Ybs2oLg/iCHPba1TZcQ=";
+    };
+  };
+  html = buildGrammar {
+    language = "html";
+    version = "29f53d8";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-html";
+      rev = "29f53d8f4f2335e61bf6418ab8958dac3282077a";
+      hash = "sha256-v84N9erFL+QMoxh1dtfVdAJ5iTCoiFcT3kQ2+yq8TXE=";
+    };
+  };
+  http = buildGrammar {
+    language = "http";
+    version = "30a9c17";
+    source = fetchFromGitHub {
+      owner = "rest-nvim";
+      repo = "tree-sitter-http";
+      rev = "30a9c1789d64429a830802cde5b1760ff1064312";
+      hash = "sha256-XpKw6v6fnowdJmoIZGn3N1r9JXdJnNifgj+DPNFuoz0=";
+    };
+  };
+  java = buildGrammar {
+    language = "java";
+    version = "09d650d";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-java";
+      rev = "09d650def6cdf7f479f4b78f595e9ef5b58ce31e";
+      hash = "sha256-tGBi6gJJIPpp6oOwmAQdqBD6eaJRBRcYbWtm1BHsgBA=";
+    };
+  };
+  javascript = buildGrammar {
+    language = "javascript";
+    version = "936d976";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-javascript";
+      rev = "936d976a782e75395d9b1c8c7c7bf4ba6fe0d86b";
+      hash = "sha256-uZW1L9ZE1YSZbwxiqSDiKycWv5mSRG4k4MlWFYoWRbw=";
+    };
+  };
+  jsdoc = buildGrammar {
+    language = "jsdoc";
+    version = "189a6a4";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-jsdoc";
+      rev = "189a6a4829beb9cdbe837260653b4a3dfb0cc3db";
+      hash = "sha256-Zhl9mEpJE9Qy3MVScE2JK4i8OFZUXl5KMhKMS4bw+mI=";
+    };
+  };
+  json = buildGrammar {
+    language = "json";
+    version = "7307675";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-json";
+      rev = "73076754005a460947cafe8e03a8cf5fa4fa2938";
+      hash = "sha256-wbE7CQ6l1wlhJdAoDVAj1QzyvlYnevbrlVCO0TMU7to=";
+    };
+  };
+  json5 = buildGrammar {
+    language = "json5";
+    version = "5dd5cdc";
+    source = fetchFromGitHub {
+      owner = "Joakker";
+      repo = "tree-sitter-json5";
+      rev = "5dd5cdc418d9659682556b6adca2dd9ace0ac6d2";
+      hash = "sha256-B3wZS/OtW4hKOHsoYdYK2zsJGID8fuIm8C+IuAteR9E=";
+    };
+  };
+  jsonc = buildGrammar {
+    language = "jsonc";
+    version = "02b0165";
+    source = fetchFromGitLab {
+      owner = "WhyNotHugo";
+      repo = "tree-sitter-jsonc";
+      rev = "02b01653c8a1c198ae7287d566efa86a135b30d5";
+      hash = "sha256-iWc2ePRiQnZ0FEdMAaAwa3iYt/SY0bEjQrZyqE9EhlU=";
+    };
+  };
+  jsonnet = buildGrammar {
+    language = "jsonnet";
+    version = "0475a50";
+    source = fetchFromGitHub {
+      owner = "sourcegraph";
+      repo = "tree-sitter-jsonnet";
+      rev = "0475a5017ad7dc84845d1d33187f2321abcb261d";
+      hash = "sha256-7LdIA+tsFUIvAk9GoqJwSU5tJDNPtsziv0rbiiLmCLY=";
+    };
+  };
+  julia = buildGrammar {
+    language = "julia";
+    version = "0572ceb";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-julia";
+      rev = "0572cebf7b8e8ef5990b4d1e7f44f0b36f62922c";
+      hash = "sha256-hN3wZJa7oXEUgdJfN0o2EoTYBsE1UZjGYfFYlGjjvO8=";
+    };
+  };
+  kotlin = buildGrammar {
+    language = "kotlin";
+    version = "a4f71eb";
+    source = fetchFromGitHub {
+      owner = "fwcd";
+      repo = "tree-sitter-kotlin";
+      rev = "a4f71eb9b8c9b19ded3e0e9470be4b1b77c2b569";
+      hash = "sha256-aRMqhmZKbKoggtBOgtFIq0xTP+PgeD3Qz6DPJsAFPRQ=";
+    };
+  };
+  lalrpop = buildGrammar {
+    language = "lalrpop";
+    version = "7744b56";
+    source = fetchFromGitHub {
+      owner = "traxys";
+      repo = "tree-sitter-lalrpop";
+      rev = "7744b56f03ac1e5643fad23c9dd90837fe97291e";
+      hash = "sha256-xz+D1lS/bpHHu2rJEjalpMajSKl3yn+bQI9JN0Bm7tU=";
+    };
+  };
+  latex = buildGrammar {
+    language = "latex";
+    version = "8c75e93";
+    source = fetchFromGitHub {
+      owner = "latex-lsp";
+      repo = "tree-sitter-latex";
+      rev = "8c75e93cd08ccb7ce1ccab22c1fbd6360e3bcea6";
+      hash = "sha256-zkp4De2eBoOsPZRHHT3mIPVWFPYboTvn6AQ4AkwXhFE=";
+    };
+  };
+  ledger = buildGrammar {
+    language = "ledger";
+    version = "47b8971";
+    source = fetchFromGitHub {
+      owner = "cbarrete";
+      repo = "tree-sitter-ledger";
+      rev = "47b8971448ce5e9abac865f450c1b14fb3b6eee9";
+      hash = "sha256-Doz561oVrWkmUAL3VUTjraO+F0aDuahhBB+xXevTrkg=";
+    };
+  };
+  llvm = buildGrammar {
+    language = "llvm";
+    version = "e9948ed";
+    source = fetchFromGitHub {
+      owner = "benwilliamgraham";
+      repo = "tree-sitter-llvm";
+      rev = "e9948edc41e9e5869af99dddb2b5ff5cc5581af6";
+      hash = "sha256-M7smrjU+7L9a2kpz0wM+G+YQGTQaqsVL/Q+OCKlPpzQ=";
+    };
+  };
+  lua = buildGrammar {
+    language = "lua";
+    version = "887dfd4";
+    source = fetchFromGitHub {
+      owner = "MunifTanjim";
+      repo = "tree-sitter-lua";
+      rev = "887dfd4e83c469300c279314ff1619b1d0b85b91";
+      hash = "sha256-5i+UN6Es+K7KDD1qz3ZrVn8IfGdTswcISUyV2sGtY9M=";
+    };
+  };
+  m68k = buildGrammar {
+    language = "m68k";
+    version = "d097b12";
+    source = fetchFromGitHub {
+      owner = "grahambates";
+      repo = "tree-sitter-m68k";
+      rev = "d097b123f19c6eaba2bf181c05420d88b9fc489d";
+      hash = "sha256-y1nioJ2R0YgGLH7dkJsTxIkejfMnh1CU+A++yTaQdb0=";
+    };
+  };
+  make = buildGrammar {
+    language = "make";
+    version = "a4b9187";
+    source = fetchFromGitHub {
+      owner = "alemuller";
+      repo = "tree-sitter-make";
+      rev = "a4b9187417d6be349ee5fd4b6e77b4172c6827dd";
+      hash = "sha256-qQqapnKKH5X8rkxbZG5PjnyxvnpyZHpFVi/CLkIn/x0=";
+    };
+  };
+  markdown = buildGrammar {
+    language = "markdown";
+    version = "272e080";
+    source = fetchFromGitHub {
+      owner = "MDeiml";
+      repo = "tree-sitter-markdown";
+      rev = "272e080bca0efd19a06a7f4252d746417224959e";
+      hash = "sha256-gKbjAcY/x9sIxiG7edolAQp2JWrx78mEGeCpayxFOuE=";
+    };
+    location = "tree-sitter-markdown";
+
+  };
+  markdown_inline = buildGrammar {
+    language = "markdown_inline";
+    version = "272e080";
+    source = fetchFromGitHub {
+      owner = "MDeiml";
+      repo = "tree-sitter-markdown";
+      rev = "272e080bca0efd19a06a7f4252d746417224959e";
+      hash = "sha256-gKbjAcY/x9sIxiG7edolAQp2JWrx78mEGeCpayxFOuE=";
+    };
+    location = "tree-sitter-markdown-inline";
+
+  };
+  menhir = buildGrammar {
+    language = "menhir";
+    version = "db7953a";
+    source = fetchFromGitHub {
+      owner = "Kerl13";
+      repo = "tree-sitter-menhir";
+      rev = "db7953acb0d5551f207373c81fa07a57d7b085cb";
+      hash = "sha256-w/ibFZ4bMPPRTgTJFLQrAzMecykJFcrjJjekKMXwqSI=";
+    };
+  };
+  meson = buildGrammar {
+    language = "meson";
+    version = "153d225";
+    source = fetchFromGitHub {
+      owner = "Decodetalkers";
+      repo = "tree-sitter-meson";
+      rev = "153d22588fb5c1eee16a165a084f9ea30f29d941";
+      hash = "sha256-q0qcRe94+zFvNzZV6vGGihL5xLl8Vr0lwDZAIYKPq2A=";
+    };
+  };
+  nickel = buildGrammar {
+    language = "nickel";
+    version = "9d83db4";
+    source = fetchFromGitHub {
+      owner = "nickel-lang";
+      repo = "tree-sitter-nickel";
+      rev = "9d83db400b6c11260b9106f131f93ddda8131933";
+      hash = "sha256-Jv7GMm6TpJE8+0pG045rFWkW/9rkv1Pn/6ko2a0bpmY=";
+    };
+  };
+  ninja = buildGrammar {
+    language = "ninja";
+    version = "0a95cfd";
+    source = fetchFromGitHub {
+      owner = "alemuller";
+      repo = "tree-sitter-ninja";
+      rev = "0a95cfdc0745b6ae82f60d3a339b37f19b7b9267";
+      hash = "sha256-e/LpQUL3UHHko4QvMeT40LCvPZRT7xTGZ9z1Zaboru4=";
+    };
+  };
+  nix = buildGrammar {
+    language = "nix";
+    version = "6b71a81";
+    source = fetchFromGitHub {
+      owner = "cstrahan";
+      repo = "tree-sitter-nix";
+      rev = "6b71a810c0acd49b980c50fc79092561f7cee307";
+      hash = "sha256-uTgSj4zz8WvzwIr7UO78F45nzVSjjitdtKY8GV4iL+w=";
+    };
+  };
+  norg = buildGrammar {
+    language = "norg";
+    version = "dfac5ad";
+    source = fetchFromGitHub {
+      owner = "nvim-neorg";
+      repo = "tree-sitter-norg";
+      rev = "dfac5ad2740a79b18ae849590a924e7bad3f1b23";
+      hash = "sha256-nH9Y2mYXRehqvq0kp1DkoI2dIAaCidFAxlKos8wZmks=";
+    };
+  };
+  ocaml = buildGrammar {
+    language = "ocaml";
+    version = "cc26b1e";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-ocaml";
+      rev = "cc26b1ef111100f26a137bcbcd39fd4e35be9a59";
+      hash = "sha256-gTmRBFFCBrA48Yn1MO2mMQPpa6u3uv5McC4BDuMXKuM=";
+    };
+    location = "ocaml";
+
+  };
+  ocaml_interface = buildGrammar {
+    language = "ocaml_interface";
+    version = "cc26b1e";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-ocaml";
+      rev = "cc26b1ef111100f26a137bcbcd39fd4e35be9a59";
+      hash = "sha256-gTmRBFFCBrA48Yn1MO2mMQPpa6u3uv5McC4BDuMXKuM=";
+    };
+    location = "interface";
+
+  };
+  ocamllex = buildGrammar {
+    language = "ocamllex";
+    version = "ac1d595";
+    source = fetchFromGitHub {
+      owner = "atom-ocaml";
+      repo = "tree-sitter-ocamllex";
+      nativeBuildInputs = [ nodejs tree-sitter ];
+      postFetch = "pushd $out && tree-sitter generate && popd";
+      rev = "ac1d5957e719d49bd6acd27439b79843e4daf8ed";
+      hash = "sha256-KxQiNJyS1Rbtc4Rl+ROktuVazdtjDduWdkrQ+NzT9NQ=";
+    };
+  };
+  org = buildGrammar {
+    language = "org";
+    version = "081179c";
+    source = fetchFromGitHub {
+      owner = "milisims";
+      repo = "tree-sitter-org";
+      rev = "081179c52b3e8175af62b9b91dc099d010c38770";
+      hash = "sha256-tD9sL84LKvkhBzTU40pfd32ggxAcPG2Qk9HIhNXKM0E=";
+    };
+  };
+  pascal = buildGrammar {
+    language = "pascal";
+    version = "2fd40f4";
+    source = fetchFromGitHub {
+      owner = "Isopod";
+      repo = "tree-sitter-pascal";
+      rev = "2fd40f477d3e2794af152618ccfac8d92eb72a66";
+      hash = "sha256-/nChZspacQymw+1P7yrkOpa7BIBVIKeLKUv0y9Hk8oc=";
+    };
+  };
+  perl = buildGrammar {
+    language = "perl";
+    version = "ff5c310";
+    source = fetchFromGitHub {
+      owner = "ganezdragon";
+      repo = "tree-sitter-perl";
+      rev = "ff5c3108083af6fcb7575e32a7558b8165a05bcd";
+      hash = "sha256-ETlvojT2X8gg323zxxNBpNqJ4ARVeo5ICKxRXUpzTv8=";
+    };
+  };
+  php = buildGrammar {
+    language = "php";
+    version = "ab2e721";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-php";
+      rev = "ab2e72179ceb8bb0b249c8ac9162a148e911b3dc";
+      hash = "sha256-Lg4gEi6bCYosakr2McmgOwGHsmsVSjD+oyG6XNTd0j0=";
+    };
+  };
+  phpdoc = buildGrammar {
+    language = "phpdoc";
+    version = "2f4d16c";
+    source = fetchFromGitHub {
+      owner = "claytonrcarter";
+      repo = "tree-sitter-phpdoc";
+      rev = "2f4d16c861b5a454b577d057f247f9902d7b47f5";
+      hash = "sha256-7oriB1AWNvedT1JRoCYuF2m5+E9MYr85Lg38KRZ+BKo=";
+    };
+  };
+  pioasm = buildGrammar {
+    language = "pioasm";
+    version = "924aada";
+    source = fetchFromGitHub {
+      owner = "leo60228";
+      repo = "tree-sitter-pioasm";
+      rev = "924aadaf5dea2a6074d72027b064f939acf32e20";
+      hash = "sha256-og5DjoyTtKUTp0V4/PpcGb8xwzLeidsb2lq0+QF7u9M=";
+    };
+  };
+  prisma = buildGrammar {
+    language = "prisma";
+    version = "17a5923";
+    source = fetchFromGitHub {
+      owner = "victorhqc";
+      repo = "tree-sitter-prisma";
+      rev = "17a59236ac25413b81b1613ea6ba5d8d52d7cd6c";
+      hash = "sha256-EdeKTmai/OM0WzCjcLmzHI41EqJWH/dOJJxvCE2sid8=";
+    };
+  };
+  proto = buildGrammar {
+    language = "proto";
+    version = "42d82fa";
+    source = fetchFromGitHub {
+      owner = "mitchellh";
+      repo = "tree-sitter-proto";
+      rev = "42d82fa18f8afe59b5fc0b16c207ee4f84cb185f";
+      hash = "sha256-cX+0YARIa9i8UymPPviyoj+Wh37AFYl9fsoNZMQXPgA=";
+    };
+  };
+  pug = buildGrammar {
+    language = "pug";
+    version = "63e2149";
+    source = fetchFromGitHub {
+      owner = "zealot128";
+      repo = "tree-sitter-pug";
+      rev = "63e214905970e75f065688b1e8aa90823c3aacdc";
+      hash = "sha256-t/KRUV1DMlU/xu5BRe1VZm+dliXdtUVhFO+6psiHf+Q=";
+    };
+  };
+  python = buildGrammar {
+    language = "python";
+    version = "b14614e";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-python";
+      rev = "b14614e2144b8f9ee54deed5a24f3c6f51f9ffa8";
+      hash = "sha256-4TDEK3v7hqinisXtAi/iJL0rUKqII07oVg/Jz3IV2yA=";
+    };
+  };
+  ql = buildGrammar {
+    language = "ql";
+    version = "bd08702";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-ql";
+      rev = "bd087020f0d8c183080ca615d38de0ec827aeeaf";
+      hash = "sha256-2QOtNguYAIhIhGuVqyx/33gFu3OqcxAPBZOk85Q226M=";
+    };
+  };
+  qmljs = buildGrammar {
+    language = "qmljs";
+    version = "0b2b25b";
+    source = fetchFromGitHub {
+      owner = "yuja";
+      repo = "tree-sitter-qmljs";
+      rev = "0b2b25bcaa7d4925d5f0dda16f6a99c588a437f1";
+      hash = "sha256-Hf8LfrN3YjN9hpGtTVmK3ZjJ/b/fsRCg9FG7hSSj/mk=";
+    };
+  };
+  query = buildGrammar {
+    language = "query";
+    version = "0695cd0";
+    source = fetchFromGitHub {
+      owner = "nvim-treesitter";
+      repo = "tree-sitter-query";
+      rev = "0695cd0760532de7b54f23c667d459b5d1332b44";
+      hash = "sha256-DwhvOvUb3hNmZTTk5HkZ9X1DCWz+G3+YJ0l/PqLVDdU=";
+    };
+  };
+  r = buildGrammar {
+    language = "r";
+    version = "0f4f66e";
+    source = fetchFromGitHub {
+      owner = "r-lib";
+      repo = "tree-sitter-r";
+      rev = "0f4f66e5050037b759ea040dafd596bcdda1de94";
+      hash = "sha256-5rgc1ZmzFT3Hgv0GKVu5Ns21Nc3Ck8NW2naslvKzguM=";
+    };
+  };
+  racket = buildGrammar {
+    language = "racket";
+    version = "b9b2e74";
+    source = fetchFromGitHub {
+      owner = "6cdh";
+      repo = "tree-sitter-racket";
+      rev = "b9b2e7454d7098e44595dd8c1b471b9d1518b910";
+      hash = "sha256-DxwbIhyCx+E0kDztPQFBa9x65ssKzsMh7vY+TpP3dTM=";
+    };
+  };
+  rasi = buildGrammar {
+    language = "rasi";
+    version = "1239134";
+    source = fetchFromGitHub {
+      owner = "Fymyte";
+      repo = "tree-sitter-rasi";
+      rev = "12391343979463a2484e6353e5afb6dcb8c31e8b";
+      hash = "sha256-JmL2Ei2DZhsZ4jFQ8s6B0ig9bflDs9dLr5/QknDqqRc=";
+    };
+  };
+  regex = buildGrammar {
+    language = "regex";
+    version = "e1cfca3";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-regex";
+      rev = "e1cfca3c79896ff79842f057ea13e529b66af636";
+      hash = "sha256-lDsr3sLrLf6wXu/juIA+bTtv1SBo+Jgwqw/6yBAE0kg=";
+    };
+  };
+  rego = buildGrammar {
+    language = "rego";
+    version = "6d70da3";
+    source = fetchFromGitHub {
+      owner = "FallenAngel97";
+      repo = "tree-sitter-rego";
+      rev = "6d70da3a998fd0081efc5d1019c71e74cc1568e9";
+      hash = "sha256-i6XVQOQHItZsba3oNplkBbCfIYjX5bU5qyig/WyGEt4=";
+    };
+  };
+  rnoweb = buildGrammar {
+    language = "rnoweb";
+    version = "502c112";
+    source = fetchFromGitHub {
+      owner = "bamonroe";
+      repo = "tree-sitter-rnoweb";
+      rev = "502c1126dc6777f09af5bef16e72a42f75bd081e";
+      hash = "sha256-aGEhy4uMhKFbL0+JO5rrn3GIe//8PZpDHEMDGHDlBCY=";
+    };
+  };
+  rst = buildGrammar {
+    language = "rst";
+    version = "25e6328";
+    source = fetchFromGitHub {
+      owner = "stsewd";
+      repo = "tree-sitter-rst";
+      rev = "25e6328872ac3a764ba8b926aea12719741103f1";
+      hash = "sha256-g3CovnXY15SkxAdVk15M4hAxizqLc551omwKKG+Vozg=";
+    };
+  };
+  ruby = buildGrammar {
+    language = "ruby";
+    version = "252ca18";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-ruby";
+      rev = "252ca18be76b0918fb6b34c302292b6931876c25";
+      hash = "sha256-8UWHLVrSxQM6iT+tN+2PwTs43n+Z69c0DVnDE3yfqKo=";
+    };
+  };
+  rust = buildGrammar {
+    language = "rust";
+    version = "47b061c";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-rust";
+      rev = "47b061c1e1ba3a7e9c2f450363a50e87de3f7c61";
+      hash = "sha256-v6ExAQxXIOeLfCjxbIhVEd7XBCkXHCiukRyrUqEBxIA=";
+    };
+  };
+  scala = buildGrammar {
+    language = "scala";
+    version = "140c96c";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-scala";
+      rev = "140c96cf398693189d4e50f76d19ddfcd8a018f8";
+      hash = "sha256-Sr4+avj0v1y8K6XXPAVwJDTa6+RmbKe/4dzd0k0y3cE=";
+    };
+  };
+  scheme = buildGrammar {
+    language = "scheme";
+    version = "af0fd1f";
+    source = fetchFromGitHub {
+      owner = "6cdh";
+      repo = "tree-sitter-scheme";
+      rev = "af0fd1fa452cb2562dc7b5c8a8c55551c39273b9";
+      hash = "sha256-K3+zmykjq2DpCnk17Ko9LOyGQTBZb1/dgVXIVynCYd4=";
+    };
+  };
+  scss = buildGrammar {
+    language = "scss";
+    version = "c478c68";
+    source = fetchFromGitHub {
+      owner = "serenadeai";
+      repo = "tree-sitter-scss";
+      rev = "c478c6868648eff49eb04a4df90d703dc45b312a";
+      hash = "sha256-BFtMT6eccBWUyq6b8UXRAbB1R1XD3CrrFf1DM3aUI5c=";
+    };
+  };
+  slint = buildGrammar {
+    language = "slint";
+    version = "d422300";
+    source = fetchFromGitHub {
+      owner = "jrmoulton";
+      repo = "tree-sitter-slint";
+      rev = "d422300f5d6ccce8f9a617dfed57aafb636fadb2";
+      hash = "sha256-j6NBJaix0oOUKLAaeo+/1XdYatStqyaTyLKawq/nFvc=";
+    };
+  };
+  solidity = buildGrammar {
+    language = "solidity";
+    version = "52ed088";
+    source = fetchFromGitHub {
+      owner = "YongJieYongJie";
+      repo = "tree-sitter-solidity";
+      rev = "52ed0880c0126df2f2c7693f215fe6f38e4a2e0a";
+      hash = "sha256-ZyeUYtE0pyQIPnZhza6u6yQO0Mx8brgAUmUpIXYZwb4=";
+    };
+  };
+  sparql = buildGrammar {
+    language = "sparql";
+    version = "05f949d";
+    source = fetchFromGitHub {
+      owner = "BonaBeavis";
+      repo = "tree-sitter-sparql";
+      rev = "05f949d3c1c15e3261473a244d3ce87777374dec";
+      hash = "sha256-KBalxmAukeSbjyelEy+ZqMcBlRd0V0/pntCwTeINTAQ=";
+    };
+  };
+  sql = buildGrammar {
+    language = "sql";
+    version = "2743c7b";
+    source = fetchFromGitHub {
+      owner = "derekstride";
+      repo = "tree-sitter-sql";
+      rev = "2743c7b5e710e6854d4e8c14c302548b436e2a1f";
+      hash = "sha256-lhQxFXphS97tITDosG/pGe85osV4CweW44ulmCd+CxQ=";
+    };
+  };
+  supercollider = buildGrammar {
+    language = "supercollider";
+    version = "90c6d9f";
+    source = fetchFromGitHub {
+      owner = "madskjeldgaard";
+      repo = "tree-sitter-supercollider";
+      rev = "90c6d9f777d2b8c4ce497c48b5f270a44bcf3ea0";
+      hash = "sha256-YF+JFLcRHrWIRky2aI5s294+G6jSyVUgt/1bnZkYGLw=";
+    };
+  };
+  surface = buildGrammar {
+    language = "surface";
+    version = "f4586b3";
+    source = fetchFromGitHub {
+      owner = "connorlay";
+      repo = "tree-sitter-surface";
+      rev = "f4586b35ac8548667a9aaa4eae44456c1f43d032";
+      hash = "sha256-Fn/pF8yvU+Ll7WmoMHnEcNxb3dsfNhuKhXA1UgXeviA=";
+    };
+  };
+  svelte = buildGrammar {
+    language = "svelte";
+    version = "52e122a";
+    source = fetchFromGitHub {
+      owner = "Himujjal";
+      repo = "tree-sitter-svelte";
+      rev = "52e122ae68b316d3aa960a0a422d3645ba717f42";
+      hash = "sha256-ACRpn1/2d6/ambLvr0xr7kT9gTzFFHXtvbQRTxEoet0=";
+    };
+  };
+  swift = buildGrammar {
+    language = "swift";
+    version = "c88b5d7";
+    source = fetchFromGitHub {
+      owner = "alex-pinkus";
+      repo = "tree-sitter-swift";
+      nativeBuildInputs = [ nodejs tree-sitter ];
+      postFetch = "pushd $out && tree-sitter generate && popd";
+      rev = "c88b5d73f193f5b0762b1a5f0299a275e6a728fb";
+      hash = "sha256-OfFMGxL72SPZW4AtHoThhYtjmKWabStLKAB9TxmjMDw=";
+    };
+  };
+  sxhkdrc = buildGrammar {
+    language = "sxhkdrc";
+    version = "440d5f9";
+    source = fetchFromGitHub {
+      owner = "RaafatTurki";
+      repo = "tree-sitter-sxhkdrc";
+      rev = "440d5f913d9465c9c776a1bd92334d32febcf065";
+      hash = "sha256-AGhGYomrMe6Wj+EHLQT4v0BiU4jxhxXpVQkU2xU/1ZI=";
+    };
+  };
+  teal = buildGrammar {
+    language = "teal";
+    version = "1ae8c68";
+    source = fetchFromGitHub {
+      owner = "euclidianAce";
+      repo = "tree-sitter-teal";
+      nativeBuildInputs = [ nodejs tree-sitter ];
+      postFetch = "pushd $out && tree-sitter generate && popd";
+      rev = "1ae8c68e90523b26b93af56feb7868fe4214e2b2";
+      hash = "sha256-8FqXrsgOI/cVezgVsQqPLlTa4Qnzmbuelo0XsI48fV0=";
+    };
+  };
+  tiger = buildGrammar {
+    language = "tiger";
+    version = "eb1d371";
+    source = fetchFromGitHub {
+      owner = "ambroisie";
+      repo = "tree-sitter-tiger";
+      rev = "eb1d3714998977ae76ca7c6a102b10ee37efc2b5";
+      hash = "sha256-kbwERaTHk5Pj5AfpbXPuRS6speB+xLMfrhRXTVOyMNw=";
+    };
+  };
+  tlaplus = buildGrammar {
+    language = "tlaplus";
+    version = "deaf0e5";
+    source = fetchFromGitHub {
+      owner = "tlaplus-community";
+      repo = "tree-sitter-tlaplus";
+      rev = "deaf0e5c573ad4e2bbfc9a29abb7b6dcb572556e";
+      hash = "sha256-D4A2k14SpVR4iKCMwql403XjHGg7p17EYazvAUiJ2gY=";
+    };
+  };
+  todotxt = buildGrammar {
+    language = "todotxt";
+    version = "0207f6a";
+    source = fetchFromGitHub {
+      owner = "arnarg";
+      repo = "tree-sitter-todotxt";
+      rev = "0207f6a4ab6aeafc4b091914d31d8235049a2578";
+      hash = "sha256-FWVW+qWOUSri+qf+qistf8bKWJCTxUKkoO66yUYtwHI=";
+    };
+  };
+  toml = buildGrammar {
+    language = "toml";
+    version = "8bd2056";
+    source = fetchFromGitHub {
+      owner = "ikatyang";
+      repo = "tree-sitter-toml";
+      rev = "8bd2056818b21860e3d756b5a58c4f6e05fb744e";
+      hash = "sha256-z9MWNOBxLHBd/pVs5/QiSSGtaW+DUd7y3wZXcl3hWnk=";
+    };
+  };
+  tsx = buildGrammar {
+    language = "tsx";
+    version = "0ab9d99";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-typescript";
+      rev = "0ab9d99867435a7667c5548a6617a6bf73dbd830";
+      hash = "sha256-Nx+K7Ic/ePKAXPIMlrRn6zELYE59f/FnnZ/LM5ELaU8=";
+    };
+    location = "tsx";
+
+  };
+  turtle = buildGrammar {
+    language = "turtle";
+    version = "085437f";
+    source = fetchFromGitHub {
+      owner = "BonaBeavis";
+      repo = "tree-sitter-turtle";
+      rev = "085437f5cb117703b7f520dd92161140a684f092";
+      hash = "sha256-ub777Pjody2SvP2EjW7IwWj8YnMuMzdJ4AlrkP6WrdA=";
+    };
+  };
+  twig = buildGrammar {
+    language = "twig";
+    version = "6a01f20";
+    source = fetchFromGitHub {
+      owner = "gbprod";
+      repo = "tree-sitter-twig";
+      rev = "6a01f20e73038300d205d370212c361949be3035";
+      hash = "sha256-M+57mGl4Sgn0yUGAyxHxE6ShR+E/ki4m8/x/f/KHetA=";
+    };
+  };
+  typescript = buildGrammar {
+    language = "typescript";
+    version = "0ab9d99";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-typescript";
+      rev = "0ab9d99867435a7667c5548a6617a6bf73dbd830";
+      hash = "sha256-Nx+K7Ic/ePKAXPIMlrRn6zELYE59f/FnnZ/LM5ELaU8=";
+    };
+    location = "typescript";
+
+  };
+  v = buildGrammar {
+    language = "v";
+    version = "d0e7c75";
+    source = fetchFromGitHub {
+      owner = "vlang";
+      repo = "vls";
+      rev = "d0e7c755193c762eb1521e3b4740b22929cc91cc";
+      hash = "sha256-d1NeZixsN9992Q1UC5ZKGN4LNxlsvdL91QW2K8d1J9Y=";
+    };
+    location = "tree_sitter_v";
+
+  };
+  vala = buildGrammar {
+    language = "vala";
+    version = "8f690bf";
+    source = fetchFromGitHub {
+      owner = "vala-lang";
+      repo = "tree-sitter-vala";
+      rev = "8f690bfa639f2b83d1fb938ed3dd98a7ba453e8b";
+      hash = "sha256-YZTE3PkBPCEkMXnLC0HSQ86v5+3/J7/ETDQp8eguFW8=";
+    };
+  };
+  verilog = buildGrammar {
+    language = "verilog";
+    version = "4457145";
+    source = fetchFromGitHub {
+      owner = "tree-sitter";
+      repo = "tree-sitter-verilog";
+      rev = "4457145e795b363f072463e697dfe2f6973c9a52";
+      hash = "sha256-l4DgThuP9EFU55YQ9lgvVP/8pXojOllQ870gRsBF3FE=";
+    };
+  };
+  vim = buildGrammar {
+    language = "vim";
+    version = "9736af8";
+    source = fetchFromGitHub {
+      owner = "vigoux";
+      repo = "tree-sitter-viml";
+      rev = "9736af8ef0a7f20b4c45f6474342c8f5b473e2cc";
+      hash = "sha256-cptSrA+EOfntdW9V8qt3pg3PUK7uSwex7OS4XVnwItI=";
+    };
+  };
+  vue = buildGrammar {
+    language = "vue";
+    version = "91fe275";
+    source = fetchFromGitHub {
+      owner = "ikatyang";
+      repo = "tree-sitter-vue";
+      rev = "91fe2754796cd8fba5f229505a23fa08f3546c06";
+      hash = "sha256-NeuNpMsKZUP5mrLCjJEOSLD6tlJpNO4Z/rFUqZLHE1A=";
+    };
+  };
+  wgsl = buildGrammar {
+    language = "wgsl";
+    version = "af16e7d";
+    source = fetchFromGitHub {
+      owner = "szebniok";
+      repo = "tree-sitter-wgsl";
+      rev = "af16e7d9e230004888fb52d33599ad38b4cf6052";
+      hash = "sha256-rp6SqiGVAxlAbrYhNLhwqawjpFXZd2R4A4cNQx6qFZs=";
+    };
+  };
+  yaml = buildGrammar {
+    language = "yaml";
+    version = "0e36bed";
+    source = fetchFromGitHub {
+      owner = "ikatyang";
+      repo = "tree-sitter-yaml";
+      rev = "0e36bed171768908f331ff7dff9d956bae016efb";
+      hash = "sha256-bpiT3FraOZhJaoiFWAoVJX1O+plnIi8aXOW2LwyU23M=";
+    };
+  };
+  yang = buildGrammar {
+    language = "yang";
+    version = "8e9d175";
+    source = fetchFromGitHub {
+      owner = "Hubro";
+      repo = "tree-sitter-yang";
+      rev = "8e9d175982afcefa3dac8ca20d40d1643accd2bd";
+      hash = "sha256-QSOy5wLb52hKkfW8bJY827zGrXTsMO5sZtl2NaNLmBA=";
+    };
+  };
+  zig = buildGrammar {
+    language = "zig";
+    version = "b1803f2";
+    source = fetchFromGitHub {
+      owner = "maxxnino";
+      repo = "tree-sitter-zig";
+      rev = "b1803f2a665d228f968a831eac4fcc07a377c7bc";
+      hash = "sha256-WLfecfqwCNh/IPPfmZ55XgsY6cLv62ad0Xhh9pUW3nw=";
+    };
+  };
+}
diff --git a/pkgs/applications/editors/vim/plugins/nvim-treesitter/overrides.nix b/pkgs/applications/editors/vim/plugins/nvim-treesitter/overrides.nix
new file mode 100644
index 0000000000000..f34fd25e8de77
--- /dev/null
+++ b/pkgs/applications/editors/vim/plugins/nvim-treesitter/overrides.nix
@@ -0,0 +1,38 @@
+{ lib, callPackage, tree-sitter, nodejs }:
+
+self: super:
+
+let
+  builtGrammars = callPackage ./generated.nix {
+    buildGrammar = callPackage ../../../../../development/tools/parsing/tree-sitter/grammar.nix { };
+  };
+
+  allGrammars = lib.filter lib.isDerivation (lib.attrValues builtGrammars);
+
+  # Usage:
+  # pkgs.vimPlugins.nvim-treesitter.withPlugins (p: [ p.c p.java ... ])
+  # or for all grammars:
+  # pkgs.vimPlugins.nvim-treesitter.withAllGrammars
+  withPlugins =
+    grammarFn: self.nvim-treesitter.overrideAttrs (_: {
+      postPatch =
+        let
+          grammars = tree-sitter.withPlugins (ps: grammarFn (ps // builtGrammars));
+        in
+        ''
+          rm -r parser
+          ln -s ${grammars} parser
+        '';
+    });
+in
+
+{
+  passthru = {
+    inherit builtGrammars allGrammars withPlugins;
+
+    tests.builtGrammars = lib.recurseIntoAttrs builtGrammars;
+
+    withAllGrammars = withPlugins (_: allGrammars);
+  };
+}
+
diff --git a/pkgs/applications/editors/vim/plugins/nvim-treesitter/update-shell.nix b/pkgs/applications/editors/vim/plugins/nvim-treesitter/update-shell.nix
new file mode 100644
index 0000000000000..ca8c4d801c2be
--- /dev/null
+++ b/pkgs/applications/editors/vim/plugins/nvim-treesitter/update-shell.nix
@@ -0,0 +1,17 @@
+{ pkgs ? import ../../../../../.. { } }:
+
+with pkgs;
+
+let
+  inherit (vimPlugins) nvim-treesitter;
+
+  neovim = pkgs.neovim.override {
+    configure.packages.all.start = [ nvim-treesitter ];
+  };
+in
+
+mkShell {
+  packages = [ neovim nix-prefetch python3 ];
+
+  NVIM_TREESITTER = nvim-treesitter;
+}
diff --git a/pkgs/applications/editors/vim/plugins/nvim-treesitter/update.py b/pkgs/applications/editors/vim/plugins/nvim-treesitter/update.py
new file mode 100755
index 0000000000000..6c35476d60698
--- /dev/null
+++ b/pkgs/applications/editors/vim/plugins/nvim-treesitter/update.py
@@ -0,0 +1,123 @@
+#!/usr/bin/env nix-shell
+#!nix-shell update-shell.nix -i python
+
+import json
+import re
+import subprocess
+from os import getenv
+from os.path import dirname, join
+
+lockfile = json.load(open(join(getenv("NVIM_TREESITTER"), "lockfile.json")))
+
+configs = json.loads(
+    subprocess.check_output(
+        [
+            "nvim",
+            "--headless",
+            "-u",
+            "NONE",
+            "+lua io.write(vim.json.encode(require('nvim-treesitter.parsers').get_parser_configs()))",
+            "+quit!",
+        ]
+    )
+)
+
+regex = re.compile("^https?://(github.com|gitlab.com)/(.+?)/(.+?)(.git)?$")
+
+
+def generate_grammar(item):
+    lang, lock = item
+    cfg = configs.get(lang)
+    if not cfg:
+        return ""
+
+    info = cfg["install_info"]
+    url = info["url"]
+    rev = lock["revision"]
+
+    generated = f"""  {lang} = buildGrammar {{
+    language = "{lang}";
+    version = "{rev[:7]}";
+    source = """
+
+    m = regex.fullmatch(url)
+    cmd = ["nix-prefetch", "--rev", rev]
+
+    match m and m.group(1, 2, 3):
+        case "github.com", owner, repo:
+            cmd += [
+                "fetchFromGitHub",
+                "--owner",
+                owner,
+                "--repo",
+                repo,
+            ]
+
+            generated += f"""fetchFromGitHub {{
+      owner = "{owner}";
+      repo = "{repo}";"""
+
+        case "gitlab.com", owner, repo:
+            cmd += [
+                "fetchFromGitLab",
+                "--owner",
+                owner,
+                "--repo",
+                repo,
+            ]
+
+            generated += f"""fetchFromGitLab {{
+      owner = "{owner}";
+      repo = "{repo}";"""
+
+        case _:
+            cmd += ["fetchgit", "url"]
+            generated += f"""fetchgit {{
+      url = "{url}";"""
+
+    if info.get("requires_generate_from_grammar"):
+        cmd += [
+            "--arg",
+            "nativeBuildInputs",
+            "[ nodejs tree-sitter ]",
+            "--postFetch",
+            "pushd $out && tree-sitter generate && popd",
+        ]
+
+        generated += """
+      nativeBuildInputs = [ nodejs tree-sitter ];
+      postFetch = "pushd $out && tree-sitter generate && popd";"""
+
+    hash = subprocess.check_output(cmd, text=True).strip()
+
+    generated += f"""
+      rev = "{rev}";
+      hash = "{hash}";
+    }};"""
+
+    location = info.get("location")
+    if location:
+        generated += f"""
+    location = "{location}";
+"""
+
+    generated += """
+  };
+"""
+
+    return generated
+
+
+generated_file = """# generated by pkgs/applications/editors/vim/plugins/nvim-treesitter/update.py
+
+{ buildGrammar, fetchFromGitHub, fetchFromGitLab, fetchgit, nodejs, tree-sitter }:
+
+{
+"""
+
+for generated in map(generate_grammar, lockfile.items()):
+    generated_file += generated
+
+generated_file += "}\n"
+
+open(join(dirname(__file__), "generated.nix"), "w").write(generated_file)
diff --git a/pkgs/applications/editors/vim/plugins/overrides.nix b/pkgs/applications/editors/vim/plugins/overrides.nix
index 071abb223b93d..1bda4248de688 100644
--- a/pkgs/applications/editors/vim/plugins/overrides.nix
+++ b/pkgs/applications/editors/vim/plugins/overrides.nix
@@ -67,7 +67,7 @@
 , CoreServices
 
   # nvim-treesitter dependencies
-, tree-sitter
+, callPackage
 
   # sved dependencies
 , glib
@@ -652,23 +652,9 @@ self: super: {
     dependencies = with self; [ plenary-nvim ];
   });
 
-  # Usage:
-  # pkgs.vimPlugins.nvim-treesitter.withPlugins (p: [ p.tree-sitter-c p.tree-sitter-java ... ])
-  # or for all grammars:
-  # pkgs.vimPlugins.nvim-treesitter.withPlugins (_: tree-sitter.allGrammars)
-  nvim-treesitter = super.nvim-treesitter.overrideAttrs (old: {
-    passthru.withPlugins =
-      grammarFn: self.nvim-treesitter.overrideAttrs (_: {
-        postPatch =
-          let
-            grammars = tree-sitter.withPlugins grammarFn;
-          in
-          ''
-            rm -r parser
-            ln -s ${grammars} parser
-          '';
-      });
-  });
+  nvim-treesitter = super.nvim-treesitter.overrideAttrs (old:
+    callPackage ./nvim-treesitter/overrides.nix { } self super
+  );
 
   octo-nvim = super.octo-nvim.overrideAttrs (old: {
     dependencies = with self; [ telescope-nvim plenary-nvim ];
diff --git a/pkgs/applications/editors/vim/plugins/vim-plugin-names b/pkgs/applications/editors/vim/plugins/vim-plugin-names
index ccb3df1b98da3..6650e74ce48bf 100644
--- a/pkgs/applications/editors/vim/plugins/vim-plugin-names
+++ b/pkgs/applications/editors/vim/plugins/vim-plugin-names
@@ -381,6 +381,7 @@ https://github.com/iamcco/markdown-preview.nvim/,,
 https://github.com/chentoast/marks.nvim/,,
 https://github.com/vim-scripts/matchit.zip/,,
 https://github.com/marko-cerovac/material.nvim/,,
+https://github.com/kaicataldo/material.vim/,HEAD,
 https://github.com/vim-scripts/mayansmoke/,,
 https://github.com/echasnovski/mini.nvim/,,
 https://github.com/wfxr/minimap.vim/,,
@@ -426,6 +427,7 @@ https://github.com/karb94/neoscroll.nvim/,,
 https://github.com/Shougo/neosnippet-snippets/,,
 https://github.com/Shougo/neosnippet.vim/,,
 https://github.com/kassio/neoterm/,,
+https://github.com/nvim-neotest/neotest/,HEAD,
 https://github.com/MrcJkb/neotest-haskell/,HEAD,
 https://github.com/rose-pine/neovim/,main,rose-pine
 https://github.com/Shatur/neovim-ayu/,,
@@ -490,6 +492,7 @@ https://github.com/mfussenegger/nvim-lint/,,
 https://github.com/jose-elias-alvarez/nvim-lsp-ts-utils/,,
 https://github.com/neovim/nvim-lspconfig/,,
 https://github.com/RishabhRD/nvim-lsputils/,,
+https://github.com/bfredl/nvim-luadev/,HEAD,
 https://github.com/rafcamlet/nvim-luapad/,,
 https://github.com/scalameta/nvim-metals/,,
 https://github.com/gpanders/nvim-moonwalk/,,
@@ -660,6 +663,7 @@ https://github.com/tom-anders/telescope-vim-bookmarks.nvim/,,
 https://github.com/nvim-telescope/telescope-z.nvim/,,
 https://github.com/jvgrootveld/telescope-zoxide/,,
 https://github.com/nvim-telescope/telescope.nvim/,,
+https://github.com/luc-tielen/telescope_hoogle/,HEAD,
 https://github.com/axelvc/template-string.nvim/,HEAD,
 https://github.com/jacoborus/tender.vim/,,
 https://github.com/wincent/terminus/,,
@@ -1047,6 +1051,7 @@ https://github.com/milkypostman/vim-togglelist/,,
 https://github.com/cespare/vim-toml/,,
 https://github.com/vimpostor/vim-tpipeline/,,
 https://github.com/bronson/vim-trailing-whitespace/,,
+https://github.com/tridactyl/vim-tridactyl/,HEAD,
 https://github.com/ianks/vim-tsx/,,
 https://github.com/lumiliet/vim-twig/,,
 https://github.com/sodapopcan/vim-twiggy/,,
@@ -1108,6 +1113,7 @@ https://github.com/tweekmonster/wstrip.vim/,,
 https://github.com/drmingdrmer/xptemplate/,,
 https://github.com/guns/xterm-color-table.vim/,,
 https://github.com/HerringtonDarkholme/yats.vim/,,
+https://github.com/elkowar/yuck.vim/,HEAD,
 https://github.com/KabbAmine/zeavim.vim/,,
 https://github.com/folke/zen-mode.nvim/,,
 https://github.com/jnurmine/zenburn/,,
diff --git a/pkgs/applications/editors/vis/default.nix b/pkgs/applications/editors/vis/default.nix
index a05b0e48e0be7..f4d25b8547f4c 100644
--- a/pkgs/applications/editors/vis/default.nix
+++ b/pkgs/applications/editors/vis/default.nix
@@ -9,11 +9,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "vis";
-  version  = "0.7";
+  version  = "0.8";
 
   src = fetchFromGitHub {
     rev = "v${version}";
-    sha256 = "1g05ncsnk57kcqm9wsv6sz8b24kyzj8r5rfpa1wfwj8qkjzx3vji";
+    sha256 = "sha256-XvWj6fZxzXeRA5oCAqIIwlfjrJcHnDrjeiPExEQKSkY=";
     repo = "vis";
     owner = "martanne";
   };
diff --git a/pkgs/applications/editors/vscode/extensions/default.nix b/pkgs/applications/editors/vscode/extensions/default.nix
index e2ff4cc727088..2abac72a3025c 100644
--- a/pkgs/applications/editors/vscode/extensions/default.nix
+++ b/pkgs/applications/editors/vscode/extensions/default.nix
@@ -350,6 +350,28 @@ let
         };
       };
 
+      dart-code.flutter = buildVscodeMarketplaceExtension {
+        mktplcRef = {
+          name = "flutter";
+          publisher = "dart-code";
+          version = "3.50.0";
+          sha256 = "sha256-2Mi0BWXfO73BBIZIRJMaQyml+jXBI9d7By+vx9Rg+pE=";
+        };
+
+        meta.license = lib.licenses.mit;
+      };
+
+      dart-code.dart-code = buildVscodeMarketplaceExtension {
+        mktplcRef = {
+          name = "dart-code";
+          publisher = "dart-code";
+          version = "3.50.0";
+          sha256 = "sha256-vdECvW4BfuT3H6GD2cH7lVW0f5591pKjXsWyJzzpHYA=";
+        };
+
+        meta.license = lib.licenses.mit;
+      };
+
       ms-python.vscode-pylance = buildVscodeMarketplaceExtension {
         mktplcRef = {
           name = "vscode-pylance";
@@ -560,8 +582,8 @@ let
         mktplcRef = {
           name = "catppuccin-vsc";
           publisher = "catppuccin";
-          version = "2.1.0";
-          sha256 = "sha256-1pX9NQxW2Rm9p912Pn7QmLmXPI7EmiXTnCLWsIQNFhY=";
+          version = "2.2.1";
+          sha256 = "sha256-vS+hz3RxG71F5QoO4LQOgOgFh6GQ8QX/+4mMD0KC1kA=";
         };
         meta = with lib; {
           description = "Soothing pastel theme for VSCode";
@@ -1447,8 +1469,8 @@ let
         mktplcRef = {
           name = "nix-ide";
           publisher = "jnoortheen";
-          version = "0.1.23";
-          sha256 = "sha256-64gwwajfgniVzJqgVLK9b8PfkNG5mk1W+qewKL7Dv0Q=";
+          version = "0.2.1";
+          sha256 = "sha256-yC4ybThMFA2ncGhp8BYD7IrwYiDU3226hewsRvJYKy4=";
         };
         meta = with lib; {
           changelog = "https://marketplace.visualstudio.com/items/jnoortheen.nix-ide/changelog";
@@ -1709,8 +1731,8 @@ let
         mktplcRef = {
           name = "direnv";
           publisher = "mkhl";
-          version = "0.6.1";
-          sha256 = "sha256-5/Tqpn/7byl+z2ATflgKV1+rhdqj+XMEZNbGwDmGwLQ=";
+          version = "0.7.0";
+          sha256 = "sha256-MLBPhDBU8vPVvbde3fdwhxKvQa8orUMKAAXoOfNrbh4=";
         };
         meta = with lib; {
           description = "direnv support for Visual Studio Code";
@@ -2152,6 +2174,17 @@ let
         };
       };
 
+      rebornix.ruby = buildVscodeMarketplaceExtension {
+        mktplcRef = {
+          name = "ruby";
+          publisher = "rebornix";
+          version = "0.28.1";
+          sha256 = "sha256-HAUdv+2T+neJ5aCGiQ37pCO6x6r57HIUnLm4apg9L50=";
+        };
+
+        meta.license = lib.licenses.mit;
+      };
+
       richie5um2.snake-trail = buildVscodeMarketplaceExtension {
         mktplcRef = {
           name = "snake-trail";
@@ -2876,6 +2909,17 @@ let
 
       WakaTime.vscode-wakatime = callPackage ./wakatime { };
 
+      wingrunr21.vscode-ruby = buildVscodeMarketplaceExtension {
+        mktplcRef = {
+          name = "vscode-ruby";
+          publisher = "wingrunr21";
+          version = "0.28.0";
+          sha256 = "sha256-H3f1+c31x+lgCzhgTb0uLg9Bdn3pZyJGPPwfpCYrS70=";
+        };
+
+        meta.license = lib.licenses.mit;
+      };
+
       wholroyd.jinja = buildVscodeMarketplaceExtension {
         mktplcRef = {
           name = "jinja";
diff --git a/pkgs/applications/editors/vscode/vscode.nix b/pkgs/applications/editors/vscode/vscode.nix
index 637aefc3074dd..337db00d6c5d5 100644
--- a/pkgs/applications/editors/vscode/vscode.nix
+++ b/pkgs/applications/editors/vscode/vscode.nix
@@ -18,17 +18,17 @@ let
   archive_fmt = if stdenv.isDarwin then "zip" else "tar.gz";
 
   sha256 = {
-    x86_64-linux = "0cf6zlwslii30877p5vb0varxs6ai5r1g9wxx1b45yrmp7rvda91";
-    x86_64-darwin = "0j9kb7j2rvrgc2dzxhi1nzs78lzhpkfk3gcqcq84hcsga0n59y03";
-    aarch64-linux = "1bf2kvnd2pz2sk26bq1wm868bvvmrg338ipysmryilhk0l490vcx";
-    aarch64-darwin = "1rwwrzabxgw2wryi6rp8sc1jqps54p7a3cjpn4q94kds8rk5j0qn";
-    armv7l-linux = "0p2kwfq74lz43vpfh90xfrqsz7nwgcjsvqwkifkchp1m3xnil742";
+    x86_64-linux = "1dcp6r78kaq3wzcw7dfra59kfpdzqy9qnlyp1ywayxh610ryjyfc";
+    x86_64-darwin = "0ypxjh5z0v83y0wb22m942qqlvx5df7k4dk8ip9wqd4p7h8540q8";
+    aarch64-linux = "1qq4zg0j3rpx06cqaic7a1x7ckk5wf8w1gp5y8hwhvkym4s8g4i7";
+    aarch64-darwin = "18hrsvr7hgmlpi64dbk581i516my6c5zwz6g8awp4fhxilk0wbrg";
+    armv7l-linux = "1y357ci4gllxg26m5qdv9652i5rra5vj972l7kdnxiimfgm6h83b";
   }.${system} or throwSystem;
 in
   callPackage ./generic.nix rec {
     # Please backport all compatible updates to the stable release.
     # This is important for the extension ecosystem.
-    version = "1.72.2";
+    version = "1.73.0";
     pname = "vscode";
 
     executableName = "code" + lib.optionalString isInsiders "-insiders";
diff --git a/pkgs/applications/editors/vscode/vscodium.nix b/pkgs/applications/editors/vscode/vscodium.nix
index 5d49c3730165b..74c28ad41b2b9 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 = "1qchwn6dccmq81bmz4zpv5pc6g2gyd7avi9hi1dd099jcxl9xgc8";
-    x86_64-darwin = "099s32kbv64s90jy1yrafwmn49f80x4qzq3kwpwpkp6vfsclvnvw";
-    aarch64-linux = "1a1rp0gki86dw03lhlnn5l378jd6z7v736x17qsbyc3qfm5schil";
-    aarch64-darwin = "153jp14zjzrdw4nwfg9mja0vy9m376dfxf2d6iwb7gl6byvqa1jj";
-    armv7l-linux = "1g5dxcly41bxdnfvmybwxrlf2qm3lkb3k0i538wfwxzy8k73i5h5";
+    x86_64-linux = "0bc95mdl19la63yvqrpfcvq9sx68wfv60a3xrz2z5lk308khfpr6";
+    x86_64-darwin = "0qb8610ilf69j0zl7z031bmqdsxsj15w1maz7lx0z09yrdyvgi7c";
+    aarch64-linux = "157arn7wsxgh3qr4bzhy75y7zw9qwz1zch7ny36kr53135d2nhz6";
+    aarch64-darwin = "0dwzqv1j1gcjyc1w41f9k1pijazr62r569arh4l53xi7amrp7hx8";
+    armv7l-linux = "1lam1z8hqdav4al07d1ahq4qh2npv191n2gqpdxg5b1fs7zv3k85";
   }.${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.72.2.22286";
+    version = "1.72.2.22289";
     pname = "vscodium";
 
     executableName = "codium";
diff --git a/pkgs/applications/editors/xed-editor/default.nix b/pkgs/applications/editors/xed-editor/default.nix
index 0cbca2ea2bde6..16331ba79e075 100644
--- a/pkgs/applications/editors/xed-editor/default.nix
+++ b/pkgs/applications/editors/xed-editor/default.nix
@@ -63,6 +63,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/linuxmint/xed";
     license = licenses.gpl2Only;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ tu-maurice ];
+    maintainers = with maintainers; [ tu-maurice bobby285271 ];
   };
 }
diff --git a/pkgs/applications/emulators/bochs/default.nix b/pkgs/applications/emulators/bochs/default.nix
index 8b7cc9fad0674..edf092028fc08 100644
--- a/pkgs/applications/emulators/bochs/default.nix
+++ b/pkgs/applications/emulators/bochs/default.nix
@@ -5,17 +5,22 @@
 , curl
 , docbook_xml_dtd_45
 , docbook_xsl
-, gtk2
+, gtk3
 , libGL
 , libGLU
 , libX11
 , libXpm
+, libobjc
 , libtool
 , ncurses
 , pkg-config
 , readline
 , wget
 , wxGTK
+, enableSDL2 ? true
+, enableTerm ? true
+, enableWx ? !stdenv.isDarwin
+, enableX11 ? !stdenv.isDarwin
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -23,7 +28,7 @@ stdenv.mkDerivation (finalAttrs: {
   version = "2.7";
 
   src = fetchurl {
-    url = "mirror://sourceforge/project/${finalAttrs.pname}/${finalAttrs.pname}/${finalAttrs.version}/${finalAttrs.pname}-${finalAttrs.version}.tar.gz";
+    url = "mirror://sourceforge/project/bochs/bochs/${finalAttrs.version}/bochs-${finalAttrs.version}.tar.gz";
     hash = "sha256-oBCrG/3HKsWgjS4kEs1HHA/r1mrx2TSbwNeWh53lsXo=";
   };
 
@@ -35,23 +40,26 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   buildInputs = [
-    SDL2
     curl
-    gtk2
+    readline
+    wget
+  ] ++ lib.optionals enableSDL2 [
+    SDL2
+  ] ++ lib.optionals enableTerm [
+    ncurses
+  ] ++ lib.optionals enableWx [
+    gtk3
+    wxGTK
+  ] ++ lib.optionals enableX11 [
     libGL
     libGLU
     libX11
     libXpm
-    ncurses
-    readline
-    wget
-    wxGTK
+  ] ++ lib.optionals stdenv.isDarwin [
+    libobjc
   ];
 
   configureFlags = [
-    "--with-x=yes"
-    "--with-x11=yes"
-
     "--with-rfb=no"
     "--with-vncsrv=no"
     "--with-nogui"
@@ -84,8 +92,6 @@ stdenv.mkDerivation (finalAttrs: {
     "--enable-cpu-level=6" # from 3 to 6
     "--enable-debugger" #conflicts with gdb-stub option
     "--enable-debugger-gui"
-    "--enable-e1000"
-    "--enable-es1370"
     "--enable-evex"
     "--enable-fpu"
     "--enable-gdb-stub=no" # conflicts with debugger option
@@ -94,12 +100,8 @@ stdenv.mkDerivation (finalAttrs: {
     "--enable-iodebug"
     "--enable-large-ramfile"
     "--enable-largefile"
-    "--enable-ne2000"
     "--enable-pci"
-    "--enable-plugins=yes"
-    "--enable-pnic"
     "--enable-repeat-speedups"
-    "--enable-sb16"
     "--enable-show-ips"
     "--enable-smp"
     "--enable-vmx=2"
@@ -112,11 +114,23 @@ stdenv.mkDerivation (finalAttrs: {
     "--enable-voodoo"
     "--enable-x86-64"
     "--enable-x86-debugger"
-  ]
-  # Boolean flags
-  ++ lib.optionals (SDL2 != null) [ "--with-sdl2" ]
-  ++ lib.optionals (ncurses != null) [ "--with-term" ]
-  ++ lib.optionals (gtk2 != null && wxGTK != null) [ "--with-wx" ];
+  ] ++ lib.optionals enableSDL2 [
+    "--with-sdl2"
+  ] ++ lib.optionals enableTerm [
+    "--with-term"
+  ] ++ lib.optionals enableWx [
+    "--with-wx"
+  ] ++ lib.optionals enableX11 [
+    "--with-x"
+    "--with-x11"
+  ] ++ lib.optionals (!stdenv.isDarwin) [
+    "--enable-e1000"
+    "--enable-es1370"
+    "--enable-ne2000"
+    "--enable-plugins"
+    "--enable-pnic"
+    "--enable-sb16"
+  ];
 
   enableParallelBuilding = true;
 
@@ -131,7 +145,6 @@ stdenv.mkDerivation (finalAttrs: {
     license = licenses.lgpl2Plus;
     maintainers = with maintainers; [ AndersonTorres ];
     platforms = platforms.unix;
-    broken = stdenv.isDarwin;
   };
 })
 # TODO: a better way to organize the options
diff --git a/pkgs/applications/emulators/cemu/cmakelists.patch b/pkgs/applications/emulators/cemu/cmakelists.patch
new file mode 100644
index 0000000000000..a337484277ef8
--- /dev/null
+++ b/pkgs/applications/emulators/cemu/cmakelists.patch
@@ -0,0 +1,12 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 4b2b789..48d9be0 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -92,6 +92,7 @@ find_package(pugixml REQUIRED)
+ find_package(RapidJSON REQUIRED)
+ find_package(Boost COMPONENTS program_options filesystem nowide REQUIRED)
+ find_package(libzip REQUIRED)
++find_package(SPIRV-Tools-opt REQUIRED)
+ find_package(glslang REQUIRED)
+ find_package(ZLIB REQUIRED)
+ find_package(zstd MODULE REQUIRED) # MODULE so that zstd::zstd is available
diff --git a/pkgs/applications/emulators/cemu/default.nix b/pkgs/applications/emulators/cemu/default.nix
new file mode 100644
index 0000000000000..8ab669afee007
--- /dev/null
+++ b/pkgs/applications/emulators/cemu/default.nix
@@ -0,0 +1,119 @@
+{ lib, stdenv, fetchFromGitHub
+, addOpenGLRunpath
+, wrapGAppsHook
+, cmake
+, glslang
+, nasm
+, pkg-config
+
+, SDL2
+, boost
+, cubeb
+, curl
+, fmt_9
+, glm
+, gtk3
+, imgui
+, libpng
+, libzip
+, libXrender
+, pugixml
+, rapidjson
+, vulkan-headers
+, wxGTK32
+, zarchive
+
+, vulkan-loader
+}:
+
+stdenv.mkDerivation rec {
+  pname = "cemu";
+  version = "2.0-10";
+
+  src = fetchFromGitHub {
+    owner = "cemu-project";
+    repo = "Cemu";
+    rev = "v${version}";
+    hash = "sha256-GJA/lJJqShuHeYirBW1kyVsU44kMpmAn916PSGOnKkY=";
+  };
+
+  patches = [
+    # glslangTargets want SPIRV-Tools-opt to be defined:
+    # > The following imported targets are referenced, but are missing:
+    # > SPIRV-Tools-opt
+    ./cmakelists.patch
+  ];
+
+  nativeBuildInputs = [
+    addOpenGLRunpath
+    wrapGAppsHook
+    cmake
+    glslang
+    nasm
+    pkg-config
+  ];
+
+  buildInputs = [
+    SDL2
+    boost
+    cubeb
+    curl
+    fmt_9
+    glm
+    gtk3
+    imgui
+    libpng
+    libzip
+    libXrender
+    pugixml
+    rapidjson
+    vulkan-headers
+    wxGTK32
+    zarchive
+  ];
+
+  cmakeFlags = [
+    "-DCMAKE_C_FLAGS_RELEASE=-DNDEBUG"
+    "-DCMAKE_CXX_FLAGS_RELEASE=-DNDEBUG"
+    "-DENABLE_VCPKG=OFF"
+
+    # PORTABLE:
+    # "All data created and maintained by Cemu will be in the directory where the executable file is located"
+    "-DPORTABLE=OFF"
+  ];
+
+  preConfigure = ''
+    rm -rf dependencies/imgui
+    ln -s ${imgui}/include/imgui dependencies/imgui
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    install -Dm755 ../bin/Cemu_release $out/bin/Cemu
+    ln -s $out/bin/Cemu $out/bin/cemu
+
+    mkdir -p $out/share/applications
+    substitute ../dist/linux/info.cemu.Cemu.desktop $out/share/applications/info.cemu.Cemu.desktop \
+      --replace "Exec=Cemu" "Exec=$out/bin/Cemu"
+
+    install -Dm644 ../dist/linux/info.cemu.Cemu.metainfo.xml -t $out/share/metainfo
+    install -Dm644 ../src/resource/logo_icon.png $out/share/icons/hicolor/128x128/apps/info.cemu.Cemu.png
+
+    runHook postInstall
+  '';
+
+  preFixup = let
+    libs = [ vulkan-loader ] ++ cubeb.passthru.backendLibs;
+  in ''
+    gappsWrapperArgs+=(--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath libs}")
+  '';
+
+  meta = with lib; {
+    description = "Cemu is a Wii U emulator";
+    homepage = "https://cemu.info";
+    license = licenses.mpl20;
+    platforms = [ "x86_64-linux" ];
+    maintainers = with maintainers; [ zhaofengli baduhai ];
+  };
+}
diff --git a/pkgs/applications/emulators/mame/default.nix b/pkgs/applications/emulators/mame/default.nix
index eb0f9076a17da..aaa4077015ee2 100644
--- a/pkgs/applications/emulators/mame/default.nix
+++ b/pkgs/applications/emulators/mame/default.nix
@@ -1,9 +1,11 @@
 { lib
 , stdenv
 , alsa-lib
+, copyDesktopItems
 , CoreAudioKit
 , expat
 , fetchFromGitHub
+, fetchurl
 , flac
 , fontconfig
 , ForceFeedback
@@ -33,29 +35,24 @@
 }:
 
 let
-  desktopItem = makeDesktopItem {
-    name = "MAME";
-    exec = "mame${lib.optionalString stdenv.is64bit "64"}";
-    desktopName = "MAME";
-    genericName = "MAME is a multi-purpose emulation framework";
-    categories = [ "System" "Emulator" ];
+  # Get icon from Arch Linux package
+  icon = fetchurl {
+    url = "https://raw.githubusercontent.com/archlinux/svntogit-community/614b24ef3856cb52b5cafc386b0f77923cbc9156/trunk/mame.svg";
+    sha256 = "sha256-F8RCyTPXZBdeTOHeUKgMDC3dXXM8rwnDzV5rppesQ/Q=";
   };
-
   dest = "$out/opt/mame";
 in
 stdenv.mkDerivation rec {
   pname = "mame";
-  version = "0.243";
+  version = "0.249";
 
   src = fetchFromGitHub {
     owner = "mamedev";
     repo = "mame";
     rev = "mame${builtins.replaceStrings [ "." ] [ "" ] version}";
-    sha256 = "sha256-dUgYLNvgvolz9M0ySkGJIZjVMBQwejkxsZ6npg8rIqk=";
+    sha256 = "sha256-im6y/E0pQxruX2kNXZLE3fHq+zXfsstnOoC1QvH4fd4=";
   };
 
-  hardeningDisable = [ "fortify" ];
-
   makeFlags = [
     "CC=${stdenv.cc.targetPrefix}cc"
     "CXX=${stdenv.cc.targetPrefix}c++"
@@ -97,7 +94,14 @@ stdenv.mkDerivation rec {
   ++ lib.optionals stdenv.isLinux [ alsa-lib libpulseaudio libXinerama libXi fontconfig ]
   ++ lib.optionals stdenv.isDarwin [ libpcap CoreAudioKit ForceFeedback ];
 
-  nativeBuildInputs = [ python3 pkg-config which makeWrapper installShellFiles ];
+  nativeBuildInputs = [
+    copyDesktopItems
+    installShellFiles
+    makeWrapper
+    pkg-config
+    python3
+    which
+  ];
 
   patches = [
     # MAME is now generating the PDF documentation on its release script since commit:
@@ -116,7 +120,23 @@ stdenv.mkDerivation rec {
       --subst-var-by mame ${dest}
   '';
 
+  desktopItems = [
+    (makeDesktopItem {
+      name = "MAME";
+      desktopName = "MAME";
+      exec = "mame";
+      icon = "mame";
+      type = "Application";
+      genericName = "MAME is a multi-purpose emulation framework";
+      comment = "Play vintage games using the MAME emulator";
+      categories = [ "Game" "Emulator" ];
+      keywords = [ "Game" "Emulator" "Arcade" ];
+    })
+  ];
+
   installPhase = ''
+    runHook preInstall
+
     make -f dist.mak PTR64=${lib.optionalString stdenv.is64bit "1"}
     mkdir -p ${dest}
     mv build/release/*/Release/mame/* ${dest}
@@ -126,11 +146,11 @@ stdenv.mkDerivation rec {
     install -Dm755 src/osd/sdl/taputil.sh $out/bin/taputil.sh
 
     installManPage ${dest}/docs/man/*.1 ${dest}/docs/man/*.6
+    install -Dm644 ${icon} $out/share/icons/hicolor/scalable/apps/mame.svg
 
     mv artwork plugins samples ${dest}
-  '' + lib.optionalString stdenv.isLinux ''
-    mkdir -p $out/share
-    ln -s ${desktopItem}/share/applications $out/share
+
+    runHook postInstall
   '';
 
   enableParallelBuilding = true;
@@ -146,7 +166,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    broken = (stdenv.isLinux && stdenv.isAarch64) || stdenv.isDarwin;
+    broken = stdenv.isDarwin;
     description = "Is a multi-purpose emulation framework";
     homepage = "https://www.mamedev.org/";
     license = with licenses; [ bsd3 gpl2Plus ];
diff --git a/pkgs/applications/emulators/mame/emuopts.patch b/pkgs/applications/emulators/mame/emuopts.patch
index b85291f52f746..233d64eb15d02 100644
--- a/pkgs/applications/emulators/mame/emuopts.patch
+++ b/pkgs/applications/emulators/mame/emuopts.patch
@@ -1,29 +1,32 @@
-diff --git a/src/emu/emuopts.cpp b/src/emu/emuopts.cpp
-index c42fcef848..d1bddae060 100644
---- a/src/emu/emuopts.cpp
-+++ b/src/emu/emuopts.cpp
-@@ -36,16 +36,16 @@ const options_entry emu_options::s_option_entries[] =
- 	{ nullptr,                                           nullptr,     OPTION_HEADER,     "CORE SEARCH PATH OPTIONS" },
- 	{ OPTION_HOMEPATH,                                   ".",         OPTION_STRING,     "path to base folder for plugin data (read/write)" },
- 	{ OPTION_MEDIAPATH ";rp;biospath;bp",                "roms",      OPTION_STRING,     "path to ROM sets and hard disk images" },
--	{ OPTION_HASHPATH ";hash_directory;hash",            "hash",      OPTION_STRING,     "path to software definition files" },
--	{ OPTION_SAMPLEPATH ";sp",                           "samples",   OPTION_STRING,     "path to audio sample sets" },
--	{ OPTION_ARTPATH,                                    "artwork",   OPTION_STRING,     "path to artwork files" },
--	{ OPTION_CTRLRPATH,                                  "ctrlr",     OPTION_STRING,     "path to controller definitions" },
--	{ OPTION_INIPATH,                                    ".;ini;ini/presets",     OPTION_STRING,     "path to ini files" },
--	{ OPTION_FONTPATH,                                   ".",         OPTION_STRING,     "path to font files" },
-+	{ OPTION_HASHPATH ";hash_directory;hash",            "hash;@mame@/hash",      OPTION_STRING,     "path to software definition files" },
-+	{ OPTION_SAMPLEPATH ";sp",                           "samples;@mame@/samples",   OPTION_STRING,     "path to audio sample sets" },
-+	{ OPTION_ARTPATH,                                    "artwork;@mame@/artwork",   OPTION_STRING,     "path to artwork files" },
-+	{ OPTION_CTRLRPATH,                                  "ctrlr;@mame@/ctrlr",     OPTION_STRING,     "path to controller definitions" },
-+	{ OPTION_INIPATH,                                    ".;ini;ini/presets;@mame@/ini/presets",     OPTION_STRING,     "path to ini files" },
-+	{ OPTION_FONTPATH,                                   ".;@mame@",         OPTION_STRING,     "path to font files" },
- 	{ OPTION_CHEATPATH,                                  "cheat",     OPTION_STRING,     "path to cheat files" },
- 	{ OPTION_CROSSHAIRPATH,                              "crosshair", OPTION_STRING,     "path to crosshair files" },
--	{ OPTION_PLUGINSPATH,                                "plugins",   OPTION_STRING,     "path to plugin files" },
--	{ OPTION_LANGUAGEPATH,                               "language",  OPTION_STRING,     "path to UI translation files" },
-+	{ OPTION_PLUGINSPATH,                                "plugins;@mame@/plugins",   OPTION_STRING,     "path to plugin files" },
-+	{ OPTION_LANGUAGEPATH,                               "language;@mame@/language",  OPTION_STRING,     "path to UI translation files" },
- 	{ OPTION_SWPATH,                                     "software",  OPTION_STRING,     "path to loose software" },
+--- a/src/emu/emuopts.cpp	2022-10-29 15:05:18.591381088 +0200
++++ b/src/emu/emuopts.cpp	2022-10-29 15:10:10.938037551 +0200
+@@ -39,16 +39,16 @@
+ 	{ nullptr,                                           nullptr,     core_options::option_type::HEADER,     "CORE SEARCH PATH OPTIONS" },
+ 	{ OPTION_PLUGINDATAPATH,                             ".",         core_options::option_type::STRING,     "path to base folder for plugin data (read/write)" },
+ 	{ OPTION_MEDIAPATH ";rp;biospath;bp",                "roms",      core_options::option_type::STRING,     "path to ROM sets and hard disk images" },
+-	{ OPTION_HASHPATH ";hash_directory;hash",            "hash",      core_options::option_type::STRING,     "path to software definition files" },
+-	{ OPTION_SAMPLEPATH ";sp",                           "samples",   core_options::option_type::STRING,     "path to audio sample sets" },
+-	{ OPTION_ARTPATH,                                    "artwork",   core_options::option_type::STRING,     "path to artwork files" },
+-	{ OPTION_CTRLRPATH,                                  "ctrlr",     core_options::option_type::STRING,     "path to controller definitions" },
+-	{ OPTION_INIPATH,                                    ".;ini;ini/presets",     core_options::option_type::STRING,     "path to ini files" },
+-	{ OPTION_FONTPATH,                                   ".",         core_options::option_type::STRING,     "path to font files" },
++	{ OPTION_HASHPATH ";hash_directory;hash",            "hash;@mame@/hash",      core_options::option_type::STRING,     "path to software definition files" },
++	{ OPTION_SAMPLEPATH ";sp",                           "samples;@mame@/samples",   core_options::option_type::STRING,     "path to audio sample sets" },
++	{ OPTION_ARTPATH,                                    "artwork;@mame@/artwork",   core_options::option_type::STRING,     "path to artwork files" },
++	{ OPTION_CTRLRPATH,                                  "ctrlr;@mame@/ctrlr",     core_options::option_type::STRING,     "path to controller definitions" },
++	{ OPTION_INIPATH,                                    ".;ini;ini/presets;@mame@/ini/presets",     core_options::option_type::STRING,     "path to ini files" },
++	{ OPTION_FONTPATH,                                   ".;@mame@",         core_options::option_type::STRING,     "path to font files" },
+ 	{ OPTION_CHEATPATH,                                  "cheat",     core_options::option_type::STRING,     "path to cheat files" },
+ 	{ OPTION_CROSSHAIRPATH,                              "crosshair", core_options::option_type::STRING,     "path to crosshair files" },
+-	{ OPTION_PLUGINSPATH,                                "plugins",   core_options::option_type::STRING,     "path to plugin files" },
+-	{ OPTION_LANGUAGEPATH,                               "language",  core_options::option_type::STRING,     "path to UI translation files" },
++	{ OPTION_PLUGINSPATH,                                "plugins;@mame@/plugins",   core_options::option_type::STRING,     "path to plugin files" },
++	{ OPTION_LANGUAGEPATH,                               "language;@mame@/language",  core_options::option_type::STRING,     "path to UI translation files" },
+ 	{ OPTION_SWPATH,                                     "software",  core_options::option_type::STRING,     "path to loose software" },
  
  	// output directory options
+@@ -1301,3 +1301,4 @@
+ 	m_entry = entry;
+ 	return entry;
+ }
++
diff --git a/pkgs/applications/emulators/mgba/default.nix b/pkgs/applications/emulators/mgba/default.nix
index ce0ea6d6de8b8..d8aec3aa54c26 100644
--- a/pkgs/applications/emulators/mgba/default.nix
+++ b/pkgs/applications/emulators/mgba/default.nix
@@ -3,7 +3,6 @@
 , fetchFromGitHub
 , SDL2
 , cmake
-, copyDesktopItems
 , ffmpeg
 , imagemagick
 , libedit
@@ -11,7 +10,6 @@
 , libepoxy
 , libzip
 , lua
-, makeDesktopItem
 , minizip
 , pkg-config
 , qtbase
@@ -33,7 +31,6 @@ stdenv.mkDerivation (finalAttrs: {
 
   nativeBuildInputs = [
     cmake
-    copyDesktopItems
     pkg-config
     wrapQtAppsHook
   ];
@@ -53,19 +50,6 @@ stdenv.mkDerivation (finalAttrs: {
     qttools
   ];
 
-  desktopItems = [
-    (makeDesktopItem {
-      name = "mgba";
-      exec = "mgba-qt";
-      icon = "mgba";
-      comment = "A Game Boy Advance Emulator";
-      desktopName = "mgba";
-      genericName = "Game Boy Advance Emulator";
-      categories = [ "Game" "Emulator" ];
-      startupNotify = false;
-    })
-  ];
-
   meta = with lib; {
     homepage = "https://mgba.io";
     description = "A modern GBA emulator with a focus on accuracy";
diff --git a/pkgs/applications/emulators/retroarch/cores.nix b/pkgs/applications/emulators/retroarch/cores.nix
index 65b117629306f..a738432a8ec36 100644
--- a/pkgs/applications/emulators/retroarch/cores.nix
+++ b/pkgs/applications/emulators/retroarch/cores.nix
@@ -6,6 +6,7 @@
 , cmake
 , curl
 , fetchFromGitHub
+, fetchpatch
 , ffmpeg
 , fluidsynth
 , gettext
@@ -38,7 +39,6 @@
 , xxd
 , xz
 , zlib
-, fetchpatch
 }:
 
 let
@@ -47,297 +47,283 @@ let
   getCoreSrc = core:
     fetchFromGitHub (builtins.getAttr core hashesFile);
 
-  mkLibRetroCore =
+  mkLibretroCore =
     { core
-    , description
-      # Check https://github.com/libretro/libretro-core-info for license information
-    , license
-    , stdenvOverride ? stdenv
     , src ? (getCoreSrc core)
-    , broken ? false
     , version ? "unstable-2022-10-18"
-    , platforms ? retroarch.meta.platforms
-      # The resulting core file is based on core name
-      # Setting `normalizeCore` to `true` will convert `-` to `_` on the core filename
-    , normalizeCore ? true
     , ...
     }@args:
-    stdenvOverride.mkDerivation (
-      let
-        inherit (stdenvOverride) hostPlatform;
-        d2u = if normalizeCore then (lib.replaceChars [ "-" ] [ "_" ]) else (x: x);
-      in
-      (rec {
-        pname = "libretro-${core}";
-        inherit version src;
-
-        buildInputs = [ zlib ] ++ args.extraBuildInputs or [ ];
-        nativeBuildInputs = [ makeWrapper ] ++ args.extraNativeBuildInputs or [ ];
-
-        makefile = "Makefile.libretro";
-        makeFlags = [
-          "platform=${{
-            linux = "unix";
-            darwin = "osx";
-            windows = "win";
-          }.${hostPlatform.parsed.kernel.name} or hostPlatform.parsed.kernel.name}"
-          "ARCH=${{
-            armv7l = "arm";
-            armv6l = "arm";
-            i686 = "x86";
-          }.${hostPlatform.parsed.cpu.name} or hostPlatform.parsed.cpu.name}"
-        ] ++ (args.makeFlags or [ ]);
-
-        coreDir = "${placeholder "out"}/lib/retroarch/cores";
-
-        installPhase = ''
-          runHook preInstall
-
-          mkdir -p $out/bin
-          mkdir -p $coreDir
-          mv ${d2u args.core}_libretro${hostPlatform.extensions.sharedLibrary} $coreDir
-          makeWrapper ${retroarch}/bin/retroarch $out/bin/retroarch-${core} \
-            --add-flags "-L $coreDir/${d2u core}_libretro${hostPlatform.extensions.sharedLibrary} $@"
-
-          runHook postInstall
-        '';
-
-        enableParallelBuilding = true;
-
-        passthru = {
-          inherit core;
-          libretroCore = "/lib/retroarch/cores";
-        };
-
-        meta = with lib; {
-          inherit broken description license platforms;
-          homepage = "https://www.libretro.com/";
-          maintainers = with maintainers; teams.libretro.members ++ [ hrdinka ];
-        };
-      }) // builtins.removeAttrs args [ "core" "src" "description" "license" "makeFlags" ]
-    );
+    import ./mkLibretroCore.nix ({
+      inherit lib stdenv core src version makeWrapper retroarch zlib;
+    } // args);
 in
 {
-  inherit mkLibRetroCore;
+  inherit mkLibretroCore;
 
-  atari800 = mkLibRetroCore {
+  atari800 = mkLibretroCore {
     core = "atari800";
-    description = "Port of Atari800 to libretro";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
     makeFlags = [ "GIT_VERSION=" ];
+    meta = {
+      description = "Port of Atari800 to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  beetle-gba = mkLibRetroCore {
+  beetle-gba = mkLibretroCore {
     core = "mednafen-gba";
     src = getCoreSrc "beetle-gba";
-    description = "Port of Mednafen's GameBoy Advance core to libretro";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
+    meta = {
+      description = "Port of Mednafen's GameBoy Advance core to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  beetle-lynx = mkLibRetroCore {
+  beetle-lynx = mkLibretroCore {
     core = "mednafen-lynx";
     src = getCoreSrc "beetle-lynx";
-    description = "Port of Mednafen's Lynx core to libretro";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
+    meta = {
+      description = "Port of Mednafen's Lynx core to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  beetle-ngp = mkLibRetroCore {
+  beetle-ngp = mkLibretroCore {
     core = "mednafen-ngp";
     src = getCoreSrc "beetle-ngp";
-    description = "Port of Mednafen's NeoGeo Pocket core to libretro";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
+    meta = {
+      description = "Port of Mednafen's NeoGeo Pocket core to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  beetle-pce-fast = mkLibRetroCore {
+  beetle-pce-fast = mkLibretroCore {
     core = "mednafen-pce-fast";
     src = getCoreSrc "beetle-pce-fast";
-    description = "Port of Mednafen's PC Engine core to libretro";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
+    meta = {
+      description = "Port of Mednafen's PC Engine core to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  beetle-pcfx = mkLibRetroCore {
+  beetle-pcfx = mkLibretroCore {
     core = "mednafen-pcfx";
     src = getCoreSrc "beetle-pcfx";
-    description = "Port of Mednafen's PCFX core to libretro";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
+    meta = {
+      description = "Port of Mednafen's PCFX core to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  beetle-psx = mkLibRetroCore {
+  beetle-psx = mkLibretroCore {
     core = "mednafen-psx";
     src = getCoreSrc "beetle-psx";
-    description = "Port of Mednafen's PSX Engine core to libretro";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
     makeFlags = [ "HAVE_HW=0" "HAVE_LIGHTREC=1" ];
+    meta = {
+      description = "Port of Mednafen's PSX Engine core to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  beetle-psx-hw = mkLibRetroCore {
+  beetle-psx-hw = mkLibretroCore {
     core = "mednafen-psx-hw";
     src = getCoreSrc "beetle-psx";
-    description = "Port of Mednafen's PSX Engine (with HW accel) core to libretro";
-    license = lib.licenses.gpl2Only;
     extraBuildInputs = [ libGL libGLU ];
     makefile = "Makefile";
     makeFlags = [ "HAVE_VULKAN=1" "HAVE_OPENGL=1" "HAVE_HW=1" "HAVE_LIGHTREC=1" ];
+    meta = {
+      description = "Port of Mednafen's PSX Engine (with HW accel) core to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  beetle-saturn = mkLibRetroCore {
+  beetle-saturn = mkLibretroCore {
     core = "mednafen-saturn";
     src = getCoreSrc "beetle-saturn";
-    description = "Port of Mednafen's Saturn core to libretro";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
-    platforms = [ "x86_64-linux" "aarch64-linux" ];
+    meta = {
+      description = "Port of Mednafen's Saturn core to libretro";
+      license = lib.licenses.gpl2Only;
+      platforms = [ "aarch64-linux" "x86_64-linux" ];
+    };
   };
 
-  beetle-snes = mkLibRetroCore {
+  beetle-snes = mkLibretroCore {
     core = "mednafen-snes";
     src = getCoreSrc "beetle-snes";
-    description = "Port of Mednafen's SNES core to libretro";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
+    meta = {
+      description = "Port of Mednafen's SNES core to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  beetle-supafaust = mkLibRetroCore {
+  beetle-supafaust = mkLibretroCore {
     core = "mednafen-supafaust";
     src = getCoreSrc "beetle-supafaust";
-    description = "Port of Mednafen's experimental snes_faust core to libretro";
-    license = lib.licenses.gpl2Plus;
     makefile = "Makefile";
+    meta = {
+      description = "Port of Mednafen's experimental snes_faust core to libretro";
+      license = lib.licenses.gpl2Plus;
+    };
   };
 
-  beetle-supergrafx = mkLibRetroCore {
+  beetle-supergrafx = mkLibretroCore {
     core = "mednafen-supergrafx";
     src = getCoreSrc "beetle-supergrafx";
-    description = "Port of Mednafen's SuperGrafx core to libretro";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
+    meta = {
+      description = "Port of Mednafen's SuperGrafx core to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  beetle-vb = mkLibRetroCore {
+  beetle-vb = mkLibretroCore {
     core = "mednafen-vb";
     src = getCoreSrc "beetle-vb";
-    description = "Port of Mednafen's VirtualBoy core to libretro";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
+    meta = {
+      description = "Port of Mednafen's VirtualBoy core to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  beetle-wswan = mkLibRetroCore {
+  beetle-wswan = mkLibretroCore {
     core = "mednafen-wswan";
     src = getCoreSrc "beetle-wswan";
-    description = "Port of Mednafen's WonderSwan core to libretro";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
+    meta = {
+      description = "Port of Mednafen's WonderSwan core to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  blastem = mkLibRetroCore {
+  blastem = mkLibretroCore {
     core = "blastem";
-    description = "Port of BlastEm to libretro";
-    license = lib.licenses.gpl3Only;
-    platforms = lib.platforms.x86;
+    meta = {
+      description = "Port of BlastEm to libretro";
+      license = lib.licenses.gpl3Only;
+      platforms = lib.platforms.x86;
+    };
   };
 
-  bluemsx = mkLibRetroCore {
+  bluemsx = mkLibretroCore {
     core = "bluemsx";
-    description = "Port of BlueMSX to libretro";
-    license = lib.licenses.gpl2Only;
+    meta = {
+      description = "Port of BlueMSX to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  bsnes = mkLibRetroCore {
+  bsnes = mkLibretroCore {
     core = "bsnes";
-    description = "Port of bsnes to libretro";
-    license = lib.licenses.gpl3Only;
     makefile = "Makefile";
+    meta = {
+      description = "Port of bsnes to libretro";
+      license = lib.licenses.gpl3Only;
+    };
   };
 
-  bsnes-hd =
-    let
-      # linux = bsd
-      # https://github.com/DerKoun/bsnes-hd/blob/f0b6cf34e9780d53516977ed2de64137a8bcc3c5/bsnes/GNUmakefile#L37
-      platform = if stdenv.isDarwin then "macos" else "linux";
-    in
-    mkLibRetroCore {
-      core = "bsnes-hd-beta";
-      src = getCoreSrc "bsnes-hd";
-      description = "Port of bsnes-hd to libretro";
-      license = lib.licenses.gpl3Only;
-      makefile = "GNUmakefile";
-      makeFlags = [
+  bsnes-hd = mkLibretroCore {
+    core = "bsnes-hd-beta";
+    src = getCoreSrc "bsnes-hd";
+    makefile = "GNUmakefile";
+    makeFlags =
+      let
+        # linux = bsd
+        # https://github.com/DerKoun/bsnes-hd/blob/f0b6cf34e9780d53516977ed2de64137a8bcc3c5/bsnes/GNUmakefile#L37
+        platform = if stdenv.isDarwin then "macos" else "linux";
+      in
+      [
         "-C"
         "bsnes"
         "target=libretro"
         "platform=${platform}"
       ];
-      extraBuildInputs = [ xorg.libX11 xorg.libXext ];
-      postBuild = "cd bsnes/out";
+    extraBuildInputs = [ xorg.libX11 xorg.libXext ];
+    postBuild = "cd bsnes/out";
+    meta = {
+      description = "Port of bsnes-hd to libretro";
+      license = lib.licenses.gpl3Only;
     };
+  };
 
-  bsnes-mercury = mkLibRetroCore {
+  bsnes-mercury = mkLibretroCore {
     core = "bsnes-mercury-accuracy";
     src = getCoreSrc "bsnes-mercury";
-    description = "Fork of bsnes with HLE DSP emulation restored";
-    license = lib.licenses.gpl3Only;
     makefile = "Makefile";
     makeFlags = [ "PROFILE=accuracy" ];
+    meta = {
+      description = "Fork of bsnes with HLE DSP emulation restored (accuracy profile)";
+      license = lib.licenses.gpl3Only;
+    };
   };
 
-  bsnes-mercury-balanced = mkLibRetroCore {
+  bsnes-mercury-balanced = mkLibretroCore {
     core = "bsnes-mercury-balanced";
     src = getCoreSrc "bsnes-mercury";
-    description = "Fork of bsnes with HLE DSP emulation restored";
-    license = lib.licenses.gpl3Only;
     makefile = "Makefile";
     makeFlags = [ "PROFILE=balanced" ];
+    meta = {
+      description = "Fork of bsnes with HLE DSP emulation restored (balanced profile)";
+      license = lib.licenses.gpl3Only;
+    };
   };
 
-  bsnes-mercury-performance = mkLibRetroCore {
+  bsnes-mercury-performance = mkLibretroCore {
     core = "bsnes-mercury-performance";
     src = getCoreSrc "bsnes-mercury";
-    description = "Fork of bsnes with HLE DSP emulation restored";
-    license = lib.licenses.gpl3Only;
     makefile = "Makefile";
     makeFlags = [ "PROFILE=performance" ];
+    meta = {
+      description = "Fork of bsnes with HLE DSP emulation restored (performance profile)";
+      license = lib.licenses.gpl3Only;
+    };
   };
 
-  citra = mkLibRetroCore {
+  citra = mkLibretroCore {
     core = "citra";
-    description = "Port of Citra to libretro";
-    license = lib.licenses.gpl2Plus;
     extraBuildInputs = [ libGLU libGL boost ffmpeg nasm ];
     makefile = "Makefile";
     makeFlags = [ "HAVE_FFMPEG_STATIC=0" ];
+    meta = {
+      description = "Port of Citra to libretro";
+      license = lib.licenses.gpl2Plus;
+    };
   };
 
-  desmume = mkLibRetroCore {
+  desmume = mkLibretroCore {
     core = "desmume";
-    description = "libretro wrapper for desmume NDS emulator";
-    license = lib.licenses.gpl2Plus;
-    extraBuildInputs = [ libpcap libGLU libGL xorg.libX11 ];
     preBuild = "cd desmume/src/frontend/libretro";
+    extraBuildInputs = [ libpcap libGLU libGL xorg.libX11 ];
     makeFlags = lib.optional stdenv.hostPlatform.isAarch32 "platform=armv-unix"
       ++ lib.optional (!stdenv.hostPlatform.isx86) "DESMUME_JIT=0";
+    meta = {
+      description = "Port of DeSmuME to libretro";
+      license = lib.licenses.gpl2Plus;
+    };
   };
 
-  desmume2015 = mkLibRetroCore {
+  desmume2015 = mkLibretroCore {
     core = "desmume2015";
-    description = "libretro wrapper for desmume NDS emulator from 2015";
-    license = lib.licenses.gpl2Plus;
     extraBuildInputs = [ libpcap libGLU libGL xorg.libX11 ];
     makeFlags = lib.optional stdenv.hostPlatform.isAarch32 "platform=armv-unix"
       ++ lib.optional (!stdenv.hostPlatform.isx86) "DESMUME_JIT=0";
     preBuild = "cd desmume";
+    meta = {
+      description = "Port of DeSmuME ~2015 to libretro";
+      license = lib.licenses.gpl2Plus;
+    };
   };
 
-  dolphin = mkLibRetroCore {
+  dolphin = mkLibretroCore {
     core = "dolphin";
-    description = "Port of Dolphin to libretro";
-    license = lib.licenses.gpl2Plus;
     extraNativeBuildInputs = [ cmake curl pkg-config ];
     extraBuildInputs = [
       libGLU
@@ -359,284 +345,354 @@ in
       "-DUSE_DISCORD_PRESENCE=OFF"
     ];
     dontUseCmakeBuildDir = true;
+    meta = {
+      description = "Port of Dolphin to libretro";
+      license = lib.licenses.gpl2Plus;
+    };
   };
 
-  dosbox = mkLibRetroCore {
+  dosbox = mkLibretroCore {
     core = "dosbox";
-    description = "Port of DOSBox to libretro";
-    license = lib.licenses.gpl2Only;
     CXXFLAGS = "-std=gnu++11";
+    meta = {
+      description = "Port of DOSBox to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  eightyone = mkLibRetroCore {
+  eightyone = mkLibretroCore {
     core = "81";
     src = getCoreSrc "eightyone";
-    description = "Port of EightyOne to libretro";
-    license = lib.licenses.gpl3Only;
+    meta = {
+      description = "Port of EightyOne to libretro";
+      license = lib.licenses.gpl3Only;
+    };
   };
 
-  fbalpha2012 = mkLibRetroCore {
+  fbalpha2012 = mkLibretroCore {
     core = "fbalpha2012";
-    description = "Port of Final Burn Alpha ~2012 to libretro";
-    license = "Non-commercial";
     makefile = "makefile.libretro";
     preBuild = "cd svn-current/trunk";
+    meta = {
+      description = "Port of Final Burn Alpha ~2012 to libretro";
+      license = "Non-commercial";
+    };
   };
 
-  fbneo = mkLibRetroCore {
+  fbneo = mkLibretroCore {
     core = "fbneo";
-    description = "Port of FBNeo to libretro";
-    license = "Non-commercial";
     makefile = "Makefile";
     preBuild = "cd src/burner/libretro";
+    meta = {
+      description = "Port of FBNeo to libretro";
+      license = "Non-commercial";
+    };
   };
 
-  fceumm = mkLibRetroCore {
+  fceumm = mkLibretroCore {
     core = "fceumm";
-    description = "FCEUmm libretro port";
-    license = lib.licenses.gpl2Only;
+    meta = {
+      description = "FCEUmm libretro port";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  flycast = mkLibRetroCore {
+  flycast = mkLibretroCore {
     core = "flycast";
-    description = "Flycast libretro port";
-    license = lib.licenses.gpl2Only;
     extraBuildInputs = [ libGL libGLU ];
     makefile = "Makefile";
     makeFlags = lib.optionals stdenv.hostPlatform.isAarch64 [ "platform=arm64" ];
     patches = [ ./fix-flycast-makefile.patch ];
-    platforms = [ "aarch64-linux" "x86_64-linux" ];
+    meta = {
+      description = "Flycast libretro port";
+      license = lib.licenses.gpl2Only;
+      platforms = [ "aarch64-linux" "x86_64-linux" ];
+    };
   };
 
-  fmsx = mkLibRetroCore {
+  fmsx = mkLibretroCore {
     core = "fmsx";
-    description = "FMSX libretro port";
-    license = "Non-commercial";
     makefile = "Makefile";
+    meta = {
+      description = "FMSX libretro port";
+      license = "Non-commercial";
+    };
   };
 
-  freeintv = mkLibRetroCore {
+  freeintv = mkLibretroCore {
     core = "freeintv";
-    description = "FreeIntv libretro port";
-    license = lib.licenses.gpl3Only;
     makefile = "Makefile";
+    meta = {
+      description = "FreeIntv libretro port";
+      license = lib.licenses.gpl3Only;
+    };
   };
 
-  gambatte = mkLibRetroCore {
+  gambatte = mkLibretroCore {
     core = "gambatte";
-    description = "Gambatte libretro port";
-    license = lib.licenses.gpl2Only;
+    meta = {
+      description = "Gambatte libretro port";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  genesis-plus-gx = mkLibRetroCore {
+  genesis-plus-gx = mkLibretroCore {
     core = "genesis-plus-gx";
-    description = "Enhanced Genesis Plus libretro port";
-    license = "Non-commercial";
+    meta = {
+      description = "Enhanced Genesis Plus libretro port";
+      license = "Non-commercial";
+    };
   };
 
-  gpsp = mkLibRetroCore {
+  gpsp = mkLibretroCore {
     core = "gpsp";
-    description = "Port of gpSP to libretro";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
+    meta = {
+      description = "Port of gpSP to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  gw = mkLibRetroCore {
+  gw = mkLibretroCore {
     core = "gw";
-    description = "Port of Game and Watch to libretro";
-    license = lib.licenses.zlib;
     makefile = "Makefile";
+    meta = {
+      description = "Port of Game and Watch to libretro";
+      license = lib.licenses.zlib;
+    };
   };
 
-  handy = mkLibRetroCore {
+  handy = mkLibretroCore {
     core = "handy";
-    description = "Port of Handy to libretro";
-    license = lib.licenses.zlib;
     makefile = "Makefile";
+    meta = {
+      description = "Port of Handy to libretro";
+      license = lib.licenses.zlib;
+    };
   };
 
-  hatari = mkLibRetroCore {
+  hatari = mkLibretroCore {
     core = "hatari";
-    description = "Port of Hatari to libretro";
-    license = lib.licenses.gpl2Only;
     extraNativeBuildInputs = [ which ];
     dontConfigure = true;
-    # zlib is already included in mkLibRetroCore as buildInputs
+    # zlib is already included in mkLibretroCore as buildInputs
     makeFlags = [ "EXTERNAL_ZLIB=1" ];
+    meta = {
+      description = "Port of Hatari to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  mame = mkLibRetroCore {
+  mame = mkLibretroCore {
     core = "mame";
-    description = "Port of MAME to libretro";
-    license = with lib.licenses; [ bsd3 gpl2Plus ];
     extraBuildInputs = [ alsa-lib libGLU libGL portaudio python3 xorg.libX11 ];
+    meta = {
+      description = "Port of MAME to libretro";
+      license = with lib.licenses; [ bsd3 gpl2Plus ];
+    };
   };
 
-  mame2000 = mkLibRetroCore {
+  mame2000 = mkLibretroCore {
     core = "mame2000";
-    description = "Port of MAME ~2000 to libretro, compatible with MAME 0.37b5 sets";
-    license = "MAME";
     makefile = "Makefile";
     makeFlags = lib.optional (!stdenv.hostPlatform.isx86) "IS_X86=0";
+    meta = {
+      description = "Port of MAME ~2000 to libretro, compatible with MAME 0.37b5 sets";
+      license = "MAME";
+    };
   };
 
-  mame2003 = mkLibRetroCore {
+  mame2003 = mkLibretroCore {
     core = "mame2003";
-    description = "Port of MAME ~2003 to libretro, compatible with MAME 0.78 sets";
-    license = "MAME";
     makefile = "Makefile";
+    meta = {
+      description = "Port of MAME ~2003 to libretro, compatible with MAME 0.78 sets";
+      license = "MAME";
+    };
   };
 
-  mame2003-plus = mkLibRetroCore {
+  mame2003-plus = mkLibretroCore {
     core = "mame2003-plus";
-    description = "Port of MAME ~2003+ to libretro, compatible with MAME 0.78 sets";
-    license = "MAME";
     makefile = "Makefile";
+    meta = {
+      description = "Port of MAME ~2003+ to libretro, compatible with MAME 0.78 sets";
+      license = "MAME";
+    };
   };
 
-  mame2010 = mkLibRetroCore {
+  mame2010 = mkLibretroCore {
     core = "mame2010";
-    description = "Port of MAME ~2010 to libretro, compatible with MAME 0.139 sets";
-    license = "MAME";
     makefile = "Makefile";
     makeFlags = lib.optionals stdenv.hostPlatform.isAarch64 [ "PTR64=1" "ARM_ENABLED=1" "X86_SH2DRC=0" "FORCE_DRC_C_BACKEND=1" ];
+    meta = {
+      description = "Port of MAME ~2010 to libretro, compatible with MAME 0.139 sets";
+      license = "MAME";
+    };
   };
 
-  mame2015 = mkLibRetroCore {
+  mame2015 = mkLibretroCore {
     core = "mame2015";
-    description = "Port of MAME ~2015 to libretro, compatible with MAME 0.160 sets";
-    license = "MAME";
     makeFlags = [ "PYTHON=python3" ];
     extraNativeBuildInputs = [ python3 ];
     extraBuildInputs = [ alsa-lib ];
     makefile = "Makefile";
     enableParallelBuilding = false;
+    meta = {
+      description = "Port of MAME ~2015 to libretro, compatible with MAME 0.160 sets";
+      license = "MAME";
+    };
   };
 
-  mame2016 = mkLibRetroCore {
+  mame2016 = mkLibretroCore {
     core = "mame2016";
-    description = "Port of MAME ~2016 to libretro, compatible with MAME 0.174 sets";
-    license = with lib.licenses; [ bsd3 gpl2Plus ];
     extraNativeBuildInputs = [ python3 ];
     extraBuildInputs = [ alsa-lib ];
     makeFlags = [ "PYTHON_EXECUTABLE=python3" ];
     enableParallelBuilding = false;
+    meta = {
+      description = "Port of MAME ~2016 to libretro, compatible with MAME 0.174 sets";
+      license = with lib.licenses; [ bsd3 gpl2Plus ];
+    };
   };
 
-  melonds = mkLibRetroCore {
+  melonds = mkLibretroCore {
     core = "melonds";
-    description = "Port of MelonDS to libretro";
-    license = lib.licenses.gpl3Only;
     extraBuildInputs = [ libGL libGLU ];
     makefile = "Makefile";
+    meta = {
+      description = "Port of MelonDS to libretro";
+      license = lib.licenses.gpl3Only;
+    };
   };
 
-  mesen = mkLibRetroCore {
+  mesen = mkLibretroCore {
     core = "mesen";
-    description = "Port of Mesen to libretro";
-    license = lib.licenses.gpl3Only;
     makefile = "Makefile";
     preBuild = "cd Libretro";
+    meta = {
+      description = "Port of Mesen to libretro";
+      license = lib.licenses.gpl3Only;
+    };
   };
 
-  mesen-s = mkLibRetroCore {
+  mesen-s = mkLibretroCore {
     core = "mesen-s";
-    description = "Port of Mesen-S to libretro";
-    license = lib.licenses.gpl3Only;
     makefile = "Makefile";
     preBuild = "cd Libretro";
     normalizeCore = false;
+    meta = {
+      description = "Port of Mesen-S to libretro";
+      license = lib.licenses.gpl3Only;
+    };
   };
 
-  meteor = mkLibRetroCore {
+  meteor = mkLibretroCore {
     core = "meteor";
-    description = "Port of Meteor to libretro";
-    license = lib.licenses.gpl3Only;
     makefile = "Makefile";
     preBuild = "cd libretro";
+    meta = {
+      description = "Port of Meteor to libretro";
+      license = lib.licenses.gpl3Only;
+    };
   };
 
-  mgba = mkLibRetroCore {
+  mgba = mkLibretroCore {
     core = "mgba";
-    description = "Port of mGBA to libretro";
-    license = lib.licenses.mpl20;
+    meta = {
+      description = "Port of mGBA to libretro";
+      license = lib.licenses.mpl20;
+    };
   };
 
-  mupen64plus = mkLibRetroCore {
+  mupen64plus = mkLibretroCore {
     core = "mupen64plus-next";
     src = getCoreSrc "mupen64plus";
-    description = "Libretro port of Mupen64 Plus, GL only";
-    license = lib.licenses.gpl3Only;
     extraBuildInputs = [ libGLU libGL libpng nasm xorg.libX11 ];
     makefile = "Makefile";
+    meta = {
+      description = "Libretro port of Mupen64 Plus, GL only";
+      license = lib.licenses.gpl3Only;
+    };
   };
 
-  neocd = mkLibRetroCore {
+  neocd = mkLibretroCore {
     core = "neocd";
-    description = "NeoCD libretro port";
-    license = lib.licenses.lgpl3Only;
     makefile = "Makefile";
+    meta = {
+      description = "NeoCD libretro port";
+      license = lib.licenses.lgpl3Only;
+    };
   };
 
-  nestopia = mkLibRetroCore {
+  nestopia = mkLibretroCore {
     core = "nestopia";
-    description = "Nestopia libretro port";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
     preBuild = "cd libretro";
+    meta = {
+      description = "Nestopia libretro port";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  nxengine = mkLibRetroCore {
+  nxengine = mkLibretroCore {
     core = "nxengine";
-    description = "NXEngine libretro port";
-    license = lib.licenses.gpl3Only;
     makefile = "Makefile";
+    meta = {
+      description = "NXEngine libretro port";
+      license = lib.licenses.gpl3Only;
+    };
   };
 
-  np2kai = mkLibRetroCore rec {
+  np2kai = mkLibretroCore rec {
     core = "np2kai";
     src = getCoreSrc core;
-    description = "Neko Project II kai libretro port";
-    license = lib.licenses.mit;
     makeFlags = [
       # See https://github.com/AZO234/NP2kai/tags
       "NP2KAI_VERSION=rev.22"
       "NP2KAI_HASH=${src.rev}"
     ];
     preBuild = "cd sdl";
+    meta = {
+      description = "Neko Project II kai libretro port";
+      license = lib.licenses.mit;
+    };
   };
 
-  o2em = mkLibRetroCore {
+  o2em = mkLibretroCore {
     core = "o2em";
-    description = "Port of O2EM to libretro";
-    license = lib.licenses.artistic1;
     makefile = "Makefile";
+    meta = {
+      description = "Port of O2EM to libretro";
+      license = lib.licenses.artistic1;
+    };
   };
 
-  opera = mkLibRetroCore {
+  opera = mkLibretroCore {
     core = "opera";
-    description = "Opera is a port of 4DO/libfreedo to libretro";
-    license = "Non-commercial";
     makefile = "Makefile";
     makeFlags = [ "CC_PREFIX=${stdenv.cc.targetPrefix}" ];
+    meta = {
+      description = "Opera is a port of 4DO/libfreedo to libretro";
+      license = "Non-commercial";
+    };
   };
 
-  parallel-n64 = mkLibRetroCore {
+  parallel-n64 = mkLibretroCore {
     core = "parallel-n64";
-    description = "Parallel Mupen64plus rewrite for libretro.";
-    license = lib.licenses.gpl3Only;
     extraBuildInputs = [ libGLU libGL libpng ];
     makefile = "Makefile";
     postPatch = lib.optionalString stdenv.hostPlatform.isAarch64 ''
       sed -i -e '1 i\CPUFLAGS += -DARM_FIX -DNO_ASM -DARM_ASM -DDONT_WANT_ARM_OPTIMIZATIONS -DARM64' Makefile \
       && sed -i -e 's,CPUFLAGS  :=,,g' Makefile
     '';
+    meta = {
+      description = "Parallel Mupen64plus rewrite for libretro.";
+      license = lib.licenses.gpl3Only;
+    };
   };
 
-  pcsx2 = mkLibRetroCore {
+  pcsx2 = mkLibretroCore {
     core = "pcsx2";
-    description = "Port of PCSX2 to libretro";
-    license = lib.licenses.gpl3Plus;
     extraNativeBuildInputs = [
       cmake
       gettext
@@ -661,39 +717,47 @@ in
       substituteInPlace CMakeLists.txt --replace "ccache" ""
     '';
     postBuild = "cd /build/source/build/pcsx2";
-    platforms = lib.platforms.x86;
+    meta = {
+      description = "Port of PCSX2 to libretro";
+      license = lib.licenses.gpl3Plus;
+      platforms = lib.platforms.x86;
+    };
   };
 
-  pcsx-rearmed = mkLibRetroCore {
+  pcsx-rearmed = mkLibretroCore {
     core = "pcsx_rearmed";
-    description = "Port of PCSX ReARMed with GNU lightning to libretro";
-    license = lib.licenses.gpl2Only;
     dontConfigure = true;
+    meta = {
+      description = "Port of PCSX ReARMed with GNU lightning to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  picodrive = mkLibRetroCore {
+  picodrive = mkLibretroCore {
     core = "picodrive";
-    description = "Fast MegaDrive/MegaCD/32X emulator";
-    license = "MAME";
     dontConfigure = true;
     makeFlags = lib.optionals stdenv.hostPlatform.isAarch64 [ "platform=aarch64" ];
+    meta = {
+      description = "Fast MegaDrive/MegaCD/32X emulator";
+      license = "MAME";
+    };
   };
 
-  play = mkLibRetroCore {
+  play = mkLibretroCore {
     core = "play";
-    description = "Port of Play! to libretro";
-    license = lib.licenses.bsd2;
     extraBuildInputs = [ boost bzip2 curl openssl icu libGL libGLU xorg.libX11 ];
     extraNativeBuildInputs = [ cmake ];
     makefile = "Makefile";
     cmakeFlags = [ "-DBUILD_PLAY=OFF" "-DBUILD_LIBRETRO_CORE=ON" ];
     postBuild = "cd Source/ui_libretro";
+    meta = {
+      description = "Port of Play! to libretro";
+      license = lib.licenses.bsd2;
+    };
   };
 
-  ppsspp = mkLibRetroCore {
+  ppsspp = mkLibretroCore {
     core = "ppsspp";
-    description = "ppsspp libretro port";
-    license = lib.licenses.gpl2Plus;
     extraNativeBuildInputs = [ cmake pkg-config python3 ];
     extraBuildInputs = [ libGLU libGL libzip ffmpeg snappy xorg.libX11 ];
     makefile = "Makefile";
@@ -705,149 +769,186 @@ in
       "-DOpenGL_GL_PREFERENCE=GLVND"
     ];
     postBuild = "cd lib";
+    meta = {
+      description = "ppsspp libretro port";
+      license = lib.licenses.gpl2Plus;
+    };
   };
 
-  prboom = mkLibRetroCore {
+  prboom = mkLibretroCore {
     core = "prboom";
-    description = "Prboom libretro port";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
+    meta = {
+      description = "Prboom libretro port";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  prosystem = mkLibRetroCore {
+  prosystem = mkLibretroCore {
     core = "prosystem";
-    description = "Port of ProSystem to libretro";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
+    meta = {
+      description = "Port of ProSystem to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  puae = mkLibRetroCore {
+  puae = mkLibretroCore {
     core = "puae";
-    description = "Amiga emulator based on WinUAE";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
+    # https://github.com/libretro/libretro-uae/pull/529
     patches = fetchpatch {
-        url = "https://github.com/libretro/libretro-uae/commit/90ba4c9bb940e566781c3590553270ad69cf212e.patch";
-        sha256 = "sha256-9xkRravvyFZc0xsIj0OSm2ux5BqYogfQ1TDnH9l6jKw=";
+      url = "https://github.com/libretro/libretro-uae/commit/90ba4c9bb940e566781c3590553270ad69cf212e.patch";
+      sha256 = "sha256-9xkRravvyFZc0xsIj0OSm2ux5BqYogfQ1TDnH9l6jKw=";
+    };
+    meta = {
+      description = "Amiga emulator based on WinUAE";
+      license = lib.licenses.gpl2Only;
     };
   };
 
-  quicknes = mkLibRetroCore {
+  quicknes = mkLibretroCore {
     core = "quicknes";
-    description = "QuickNES libretro port";
-    license = lib.licenses.lgpl21Plus;
     makefile = "Makefile";
+    meta = {
+      description = "QuickNES libretro port";
+      license = lib.licenses.lgpl21Plus;
+    };
   };
 
-  sameboy = mkLibRetroCore {
+  sameboy = mkLibretroCore {
     core = "sameboy";
-    description = "SameBoy libretro port";
-    license = lib.licenses.mit;
     extraNativeBuildInputs = [ which hexdump ];
     preBuild = "cd libretro";
     makefile = "Makefile";
+    meta = {
+      description = "SameBoy libretro port";
+      license = lib.licenses.mit;
+    };
   };
 
-  scummvm = mkLibRetroCore {
+  scummvm = mkLibretroCore {
     core = "scummvm";
-    description = "Libretro port of ScummVM";
-    license = lib.licenses.gpl2Only;
     extraBuildInputs = [ fluidsynth libjpeg libvorbis libGLU libGL ];
     makefile = "Makefile";
     preConfigure = "cd backends/platform/libretro/build";
+    meta = {
+      description = "Libretro port of ScummVM";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  smsplus-gx = mkLibRetroCore {
+  smsplus-gx = mkLibretroCore {
     core = "smsplus";
     src = getCoreSrc "smsplus-gx";
-    description = "SMS Plus GX libretro port";
-    license = lib.licenses.gpl2Plus;
+    meta = {
+      description = "SMS Plus GX libretro port";
+      license = lib.licenses.gpl2Plus;
+    };
   };
 
-  snes9x = mkLibRetroCore {
+  snes9x = mkLibretroCore {
     core = "snes9x";
-    description = "Port of SNES9x git to libretro";
-    license = "Non-commercial";
     makefile = "Makefile";
     preBuild = "cd libretro";
+    meta = {
+      description = "Port of SNES9x git to libretro";
+      license = "Non-commercial";
+    };
   };
 
-  snes9x2002 = mkLibRetroCore {
+  snes9x2002 = mkLibretroCore {
     core = "snes9x2002";
-    description = "Optimized port/rewrite of SNES9x 1.39 to Libretro";
-    license = "Non-commercial";
     makefile = "Makefile";
+    meta = {
+      description = "Optimized port/rewrite of SNES9x 1.39 to Libretro";
+      license = "Non-commercial";
+    };
   };
 
-  snes9x2005 = mkLibRetroCore {
+  snes9x2005 = mkLibretroCore {
     core = "snes9x2005";
-    description = "Optimized port/rewrite of SNES9x 1.43 to Libretro";
-    license = "Non-commercial";
     makefile = "Makefile";
+    meta = {
+      description = "Optimized port/rewrite of SNES9x 1.43 to Libretro";
+      license = "Non-commercial";
+    };
   };
 
-  snes9x2005-plus = mkLibRetroCore {
+  snes9x2005-plus = mkLibretroCore {
     core = "snes9x2005-plus";
     src = getCoreSrc "snes9x2005";
-    description = "Optimized port/rewrite of SNES9x 1.43 to Libretro, with Blargg's APU";
-    license = "Non-commercial";
     makefile = "Makefile";
     makeFlags = [ "USE_BLARGG_APU=1" ];
+    meta = {
+      description = "Optimized port/rewrite of SNES9x 1.43 to Libretro, with Blargg's APU";
+      license = "Non-commercial";
+    };
   };
 
-  snes9x2010 = mkLibRetroCore {
+  snes9x2010 = mkLibretroCore {
     core = "snes9x2010";
-    description = "Optimized port/rewrite of SNES9x 1.52+ to Libretro";
-    license = "Non-commercial";
+    meta = {
+      description = "Optimized port/rewrite of SNES9x 1.52+ to Libretro";
+      license = "Non-commercial";
+    };
   };
 
-  stella = mkLibRetroCore {
+  stella = mkLibretroCore {
     core = "stella";
-    description = "Port of Stella to libretro";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
     preBuild = "cd src/os/libretro";
     dontConfigure = true;
+    meta = {
+      description = "Port of Stella to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  stella2014 = mkLibRetroCore {
+  stella2014 = mkLibretroCore {
     core = "stella2014";
-    description = "Port of Stella to libretro";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
+    meta = {
+      description = "Port of Stella ~2014 to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  swanstation = mkLibRetroCore {
+  swanstation = mkLibretroCore {
     core = "swanstation";
-    description = "Port of SwanStation (a fork of DuckStation) to libretro";
-    license = lib.licenses.gpl3Only;
     extraNativeBuildInputs = [ cmake ];
     makefile = "Makefile";
     cmakeFlags = [
       "-DBUILD_LIBRETRO_CORE=ON"
     ];
+    meta = {
+      description = "Port of SwanStation (a fork of DuckStation) to libretro";
+      license = lib.licenses.gpl3Only;
+    };
   };
 
-  tgbdual = mkLibRetroCore {
+  tgbdual = mkLibretroCore {
     core = "tgbdual";
-    description = "Port of TGBDual to libretro";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
+    meta = {
+      description = "Port of TGBDual to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  thepowdertoy = mkLibRetroCore {
+  thepowdertoy = mkLibretroCore {
     core = "thepowdertoy";
-    description = "Port of The Powder Toy to libretro";
-    license = lib.licenses.gpl3Only;
     extraNativeBuildInputs = [ cmake ];
     makefile = "Makefile";
     postBuild = "cd src";
+    meta = {
+      description = "Port of The Powder Toy to libretro";
+      license = lib.licenses.gpl3Only;
+    };
   };
 
-  tic80 = mkLibRetroCore {
+  tic80 = mkLibretroCore {
     core = "tic80";
-    description = "Port of TIC-80 to libretro";
-    license = lib.licenses.mit;
     extraNativeBuildInputs = [ cmake pkg-config ];
     makefile = "Makefile";
     cmakeFlags = [
@@ -860,44 +961,58 @@ in
     ];
     preConfigure = "cd core";
     postBuild = "cd lib";
+    meta = {
+      description = "Port of TIC-80 to libretro";
+      license = lib.licenses.mit;
+    };
   };
 
-  vba-m = mkLibRetroCore {
+  vba-m = mkLibretroCore {
     core = "vbam";
     src = getCoreSrc "vba-m";
-    description = "vanilla VBA-M libretro port";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
     preBuild = "cd src/libretro";
+    meta = {
+      description = "vanilla VBA-M libretro port";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  vba-next = mkLibRetroCore {
+  vba-next = mkLibretroCore {
     core = "vba-next";
-    description = "VBA-M libretro port with modifications for speed";
-    license = lib.licenses.gpl2Only;
+    meta = {
+      description = "VBA-M libretro port with modifications for speed";
+      license = lib.licenses.gpl2Only;
+    };
   };
 
-  vecx = mkLibRetroCore {
+  vecx = mkLibretroCore {
     core = "vecx";
-    description = "Port of Vecx to libretro";
-    license = lib.licenses.gpl3Only;
     extraBuildInputs = [ libGL libGLU ];
+    meta = {
+      description = "Port of Vecx to libretro";
+      license = lib.licenses.gpl3Only;
+    };
   };
 
-  virtualjaguar = mkLibRetroCore {
+  virtualjaguar = mkLibretroCore {
     core = "virtualjaguar";
-    description = "Port of VirtualJaguar to libretro";
-    license = lib.licenses.gpl3Only;
     makefile = "Makefile";
+    meta = {
+      description = "Port of VirtualJaguar to libretro";
+      license = lib.licenses.gpl3Only;
+    };
   };
 
-  yabause = mkLibRetroCore {
+  yabause = mkLibretroCore {
     core = "yabause";
-    description = "Port of Yabause to libretro";
-    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
     # Disable SSE for non-x86. DYNAREC doesn't build on aarch64.
     makeFlags = lib.optional (!stdenv.hostPlatform.isx86) "HAVE_SSE=0";
     preBuild = "cd yabause/src/libretro";
+    meta = {
+      description = "Port of Yabause to libretro";
+      license = lib.licenses.gpl2Only;
+    };
   };
 }
diff --git a/pkgs/applications/emulators/retroarch/default.nix b/pkgs/applications/emulators/retroarch/default.nix
index a8a20682afd43..d0a281afc373a 100644
--- a/pkgs/applications/emulators/retroarch/default.nix
+++ b/pkgs/applications/emulators/retroarch/default.nix
@@ -6,18 +6,17 @@
 , withVulkan ? stdenv.isLinux
 , withWayland ? stdenv.isLinux
 , alsa-lib
-, AppKit
 , dbus
 , fetchFromGitHub
 , ffmpeg_4
-, Foundation
+, flac
 , freetype
 , gamemode
 , libdrm
 , libGL
 , libGLU
-, libobjc
 , libpulseaudio
+, libretro-core-info
 , libv4l
 , libX11
 , libXdmcp
@@ -26,71 +25,61 @@
 , libxml2
 , libXxf86vm
 , makeWrapper
+, mbedtls
 , mesa
 , nvidia_cg_toolkit
 , pkg-config
 , python3
 , SDL2
+, substituteAll
 , udev
 , vulkan-loader
 , wayland
+, zlib
 }:
 
 let
-  version = "1.12.0";
-  libretroCoreInfo = fetchFromGitHub {
-    owner = "libretro";
-    repo = "libretro-core-info";
-    sha256 = "sha256-9Sfp/JkMJIe34YGNRxf93fONOBuQxR2pduoJU+xtuF0=";
-    # Upstream didn't tag a new libretro-core-info in 1.12.0 release
-    rev = "v1.11.1";
-  };
   runtimeLibs =
     lib.optional withVulkan vulkan-loader ++
     lib.optional withGamemode (lib.getLib gamemode);
 in
 stdenv.mkDerivation rec {
   pname = "retroarch-bare";
-  inherit version;
+  version = "1.12.0";
 
   src = fetchFromGitHub {
     owner = "libretro";
     repo = "RetroArch";
-    sha256 = "sha256-doLWNA8aTAllxx3zABtvZaegBQEPIi8276zbytPSdBU=";
+    hash = "sha256-doLWNA8aTAllxx3zABtvZaegBQEPIi8276zbytPSdBU=";
     rev = "v${version}";
   };
 
   patches = [
-    ./use-fixed-paths.patch
+    (substituteAll {
+      src = ./use-fixed-path-for-libretro_core_info.patch;
+      libretro_info_path = libretro-core-info;
+    })
   ];
 
-  postPatch = ''
-    substituteInPlace "frontend/drivers/platform_unix.c" \
-      --subst-var-by libretro_directory "$out/lib" \
-      --subst-var-by libretro_info_path "$out/share/libretro/info" \
-      --subst-var-by out "$out"
-    substituteInPlace "frontend/drivers/platform_darwin.m" \
-      --subst-var-by libretro_directory "$out/lib" \
-      --subst-var-by libretro_info_path "$out/share/libretro/info"
-  '';
-
   nativeBuildInputs = [ pkg-config ] ++
     lib.optional withWayland wayland ++
     lib.optional (runtimeLibs != [ ]) makeWrapper;
 
   buildInputs = [
     ffmpeg_4
+    flac
     freetype
     libGL
     libGLU
     libxml2
+    mbedtls
     python3
     SDL2
+    zlib
   ] ++
   lib.optional enableNvidiaCgToolkit nvidia_cg_toolkit ++
   lib.optional withVulkan vulkan-loader ++
   lib.optional withWayland wayland ++
-  lib.optionals stdenv.isDarwin [ libobjc AppKit Foundation ] ++
   lib.optionals stdenv.isLinux [
     alsa-lib
     dbus
@@ -110,6 +99,9 @@ stdenv.mkDerivation rec {
 
   configureFlags = [
     "--disable-update_cores"
+    "--disable-builtinmbedtls"
+    "--disable-builtinzlib"
+    "--disable-builtinflac"
   ] ++
   lib.optionals stdenv.isLinux [
     "--enable-dbus"
@@ -117,39 +109,13 @@ stdenv.mkDerivation rec {
     "--enable-kms"
   ];
 
-  postInstall = ''
-    # TODO: ideally each core should have its own core information
-    mkdir -p $out/share/libretro/info
-    cp -r ${libretroCoreInfo}/* $out/share/libretro/info
-  '' +
-  lib.optionalString (runtimeLibs != [ ]) ''
+  postInstall = lib.optionalString (runtimeLibs != [ ]) ''
     wrapProgram $out/bin/retroarch \
       --prefix LD_LIBRARY_PATH ':' ${lib.makeLibraryPath runtimeLibs}
-  '' +
-  lib.optionalString stdenv.isDarwin ''
-    # https://github.com/libretro/RetroArch/blob/master/retroarch-apple-packaging.sh
-    app=$out/Applications/RetroArch.app
-    mkdir -p $app/Contents/MacOS
-    cp -r pkg/apple/OSX/* $app/Contents
-    cp $out/bin/retroarch $app/Contents/MacOS
-    # FIXME: using Info_Metal.plist results in input not working
-    # mv $app/Contents/Info_Metal.plist $app/Contents/Info.plist
-
-    substituteInPlace $app/Contents/Info.plist \
-      --replace '${"\${EXECUTABLE_NAME}"}' 'RetroArch' \
-      --replace '$(PRODUCT_BUNDLE_IDENTIFIER)' 'com.libretro.RetroArch' \
-      --replace '${"\${PRODUCT_NAME}"}' 'RetroArch' \
-      --replace '${"\${MACOSX_DEPLOYMENT_TARGET}"}' '10.13'
-
-    cp media/retroarch.icns $app/Contents/Resources/
   '';
 
   preFixup = "rm $out/bin/retroarch-cg2glsl";
 
-  # Workaround for the following error affecting newer versions of Clang:
-  # ./config.def.h:xxx:x: error: 'TARGET_OS_TV' is not defined, evaluates to 0 [-Werror,-Wundef-prefix=TARGET_OS_]
-  NIX_CFLAGS_COMPILE = lib.optionals stdenv.cc.isClang [ "-Wno-undef-prefix" ];
-
   passthru.tests = nixosTests.retroarch;
 
   meta = with lib; {
@@ -159,9 +125,11 @@ stdenv.mkDerivation rec {
     platforms = platforms.unix;
     changelog = "https://github.com/libretro/RetroArch/blob/v${version}/CHANGES.md";
     maintainers = with maintainers; teams.libretro.members ++ [ matthewbauer kolbycrouch ];
-    # FIXME: error while building in macOS:
-    # "Undefined symbols for architecture <arch>"
-    # See also retroarch/wrapper.nix that is also broken in macOS
+    mainProgram = "retroarch";
+    # If you want to (re)-add support for macOS, see:
+    # https://docs.libretro.com/development/retroarch/compilation/osx/
+    # and
+    # https://github.com/libretro/RetroArch/blob/71eb74d256cb4dc5b8b43991aec74980547c5069/.gitlab-ci.yml#L330
     broken = stdenv.isDarwin;
   };
 }
diff --git a/pkgs/applications/emulators/retroarch/libretro-core-info.nix b/pkgs/applications/emulators/retroarch/libretro-core-info.nix
new file mode 100644
index 0000000000000..1dd8b0e4b7481
--- /dev/null
+++ b/pkgs/applications/emulators/retroarch/libretro-core-info.nix
@@ -0,0 +1,28 @@
+{ lib
+, stdenvNoCC
+, fetchFromGitHub
+}:
+
+stdenvNoCC.mkDerivation rec {
+  pname = "libretro-core-info";
+  version = "1.12.0";
+
+  src = fetchFromGitHub {
+    owner = "libretro";
+    repo = "libretro-core-info";
+    hash = "sha256-ByATDM0V40UJxigqVLyTWkHY5tiCC2dvZebksl8GsUI=";
+    rev = "v${version}";
+  };
+
+  makeFlags = [ "PREFIX=$(out)" ];
+
+  dontBuild = true;
+
+  meta = with lib; {
+    description = "Libretro's core info files";
+    homepage = "https://libretro.com";
+    license = licenses.mit;
+    maintainers = with maintainers; teams.libretro.members ++ [ ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/applications/emulators/retroarch/mkLibretroCore.nix b/pkgs/applications/emulators/retroarch/mkLibretroCore.nix
new file mode 100644
index 0000000000000..6ab6521270095
--- /dev/null
+++ b/pkgs/applications/emulators/retroarch/mkLibretroCore.nix
@@ -0,0 +1,80 @@
+{ lib
+, stdenv
+, core
+, makeWrapper
+, retroarch
+, zlib
+, makefile ? "Makefile.libretro"
+, extraBuildInputs ? [ ]
+, extraNativeBuildInputs ? [ ]
+  # Location of resulting RetroArch core on $out
+, libretroCore ? "/lib/retroarch/cores"
+  # The core filename is derivated from the core name
+  # Setting `normalizeCore` to `true` will convert `-` to `_` on the core filename
+, normalizeCore ? true
+, ...
+}@args:
+
+let
+  d2u = if normalizeCore then (lib.replaceChars [ "-" ] [ "_" ]) else (x: x);
+  coreDir = placeholder "out" + libretroCore;
+  coreFilename = "${d2u core}_libretro${stdenv.hostPlatform.extensions.sharedLibrary}";
+  mainProgram = "retroarch-${core}";
+  extraArgs = builtins.removeAttrs args [
+    "lib"
+    "stdenv"
+    "core"
+    "makeWrapper"
+    "retroarch"
+    "zlib"
+    "makefile"
+    "extraBuildInputs"
+    "extraNativeBuildInputs"
+    "libretroCore"
+    "normalizeCore"
+    "makeFlags"
+    "meta"
+  ];
+in
+stdenv.mkDerivation ({
+  pname = "libretro-${core}";
+
+  buildInputs = [ zlib ] ++ extraBuildInputs;
+  nativeBuildInputs = [ makeWrapper ] ++ extraNativeBuildInputs;
+
+  inherit makefile;
+
+  makeFlags = [
+    "platform=${{
+      linux = "unix";
+      darwin = "osx";
+      windows = "win";
+    }.${stdenv.hostPlatform.parsed.kernel.name} or stdenv.hostPlatform.parsed.kernel.name}"
+    "ARCH=${{
+      armv7l = "arm";
+      armv6l = "arm";
+      i686 = "x86";
+    }.${stdenv.hostPlatform.parsed.cpu.name} or stdenv.hostPlatform.parsed.cpu.name}"
+  ] ++ (args.makeFlags or [ ]);
+
+  installPhase = ''
+    runHook preInstall
+
+    install -Dt ${coreDir} ${coreFilename}
+    makeWrapper ${retroarch}/bin/retroarch $out/bin/${mainProgram} \
+      --add-flags "-L ${coreDir}/${coreFilename} $@"
+
+    runHook postInstall
+  '';
+
+  enableParallelBuilding = true;
+
+  passthru = { inherit core libretroCore; };
+
+  meta = with lib; {
+    inherit mainProgram;
+    inherit (retroarch.meta) platforms;
+    homepage = "https://www.libretro.com/";
+    maintainers = with maintainers; teams.libretro.members ++ [ hrdinka ];
+  } // (args.meta or { });
+} // extraArgs)
diff --git a/pkgs/applications/emulators/retroarch/use-fixed-path-for-libretro_core_info.patch b/pkgs/applications/emulators/retroarch/use-fixed-path-for-libretro_core_info.patch
new file mode 100644
index 0000000000000..256397fd49eaf
--- /dev/null
+++ b/pkgs/applications/emulators/retroarch/use-fixed-path-for-libretro_core_info.patch
@@ -0,0 +1,41 @@
+From 6145cb9ed935621f1974655fe1ab44cf2f0fbcce Mon Sep 17 00:00:00 2001
+From: Thiago Kenji Okada <thiagokokada@gmail.com>
+Date: Sat, 29 Oct 2022 12:27:55 +0100
+Subject: [PATCH] Use fixed path for libretro_core_info
+
+---
+ configuration.c                  | 2 +-
+ frontend/drivers/platform_unix.c | 4 ++--
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/configuration.c b/configuration.c
+index af3fc8f43c..c6d56308b3 100644
+--- a/configuration.c
++++ b/configuration.c
+@@ -1468,7 +1468,7 @@ static struct config_path_setting *populate_settings_path(
+    SETTING_PATH("core_options_path",
+          settings->paths.path_core_options, false, NULL, true);
+    SETTING_PATH("libretro_info_path",
+-         settings->paths.path_libretro_info, false, NULL, true);
++         settings->paths.path_libretro_info, false, NULL, false);
+    SETTING_PATH("content_database_path",
+          settings->paths.path_content_database, false, NULL, true);
+    SETTING_PATH("cheat_database_path",
+diff --git a/frontend/drivers/platform_unix.c b/frontend/drivers/platform_unix.c
+index fe5f7341c9..c2a91f8c99 100644
+--- a/frontend/drivers/platform_unix.c
++++ b/frontend/drivers/platform_unix.c
+@@ -1799,8 +1799,8 @@ static void frontend_unix_get_env(int *argc,
+    fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], base_path,
+          "core_info", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
+ #else
+-   fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], base_path,
+-         "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
++   fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], "@libretro_info_path@",
++         "share/libretro/info", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
+ #endif
+    fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUTOCONFIG], base_path,
+          "autoconfig", sizeof(g_defaults.dirs[DEFAULT_DIR_AUTOCONFIG]));
+-- 
+2.38.0
+
diff --git a/pkgs/applications/emulators/retroarch/use-fixed-paths.patch b/pkgs/applications/emulators/retroarch/use-fixed-paths.patch
deleted file mode 100644
index a4837e63af7f7..0000000000000
--- a/pkgs/applications/emulators/retroarch/use-fixed-paths.patch
+++ /dev/null
@@ -1,154 +0,0 @@
-From 8a1cffebb23f9d2a28228cd8cbf4fd80836157e8 Mon Sep 17 00:00:00 2001
-From: Thiago Kenji Okada <thiagokokada@gmail.com>
-Date: Tue, 18 Oct 2022 17:41:33 +0100
-Subject: [PATCH] Use fixed paths
-
----
- configuration.c                    |  2 +-
- frontend/drivers/platform_darwin.m |  4 +--
- frontend/drivers/platform_unix.c   | 56 +++++++++++++++---------------
- 3 files changed, 31 insertions(+), 31 deletions(-)
-
-diff --git a/configuration.c b/configuration.c
-index ac4779b2d7..d980892dda 100644
---- a/configuration.c
-+++ b/configuration.c
-@@ -1468,7 +1468,7 @@ static struct config_path_setting *populate_settings_path(
-    SETTING_PATH("core_options_path",
-          settings->paths.path_core_options, false, NULL, true);
-    SETTING_PATH("libretro_info_path",
--         settings->paths.path_libretro_info, false, NULL, true);
-+         settings->paths.path_libretro_info, false, NULL, false);
-    SETTING_PATH("content_database_path",
-          settings->paths.path_content_database, false, NULL, true);
-    SETTING_PATH("cheat_database_path",
-diff --git a/frontend/drivers/platform_darwin.m b/frontend/drivers/platform_darwin.m
-index c771ec0f55..d5e21a1f4d 100644
---- a/frontend/drivers/platform_darwin.m
-+++ b/frontend/drivers/platform_darwin.m
-@@ -400,9 +400,9 @@ static void frontend_darwin_get_env(int *argc, char *argv[],
- 		    home_dir_buf, "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
- #else
-     fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE],
--		    bundle_path_buf, "modules", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
-+		    "@libretro_directory@", "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
- #endif
--   fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], home_dir_buf, "info", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
-+   fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], "@libretro_info_path@", "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
-    fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_OVERLAY], home_dir_buf, "overlays", sizeof(g_defaults.dirs[DEFAULT_DIR_OVERLAY]));
- #ifdef HAVE_VIDEO_LAYOUT
-    fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_LAYOUT], home_dir_buf, "layouts", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_LAYOUT]));
-diff --git a/frontend/drivers/platform_unix.c b/frontend/drivers/platform_unix.c
-index 29e9a0d633..dba8abe941 100644
---- a/frontend/drivers/platform_unix.c
-+++ b/frontend/drivers/platform_unix.c
-@@ -1792,8 +1792,8 @@ static void frontend_unix_get_env(int *argc,
-       strlcpy(g_defaults.dirs[DEFAULT_DIR_CORE], libretro_directory,
-             sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
-    else
--      fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE], base_path,
--            "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
-+      fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE], "@libretro_directory@",
-+            "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
- #if defined(DINGUX)
-    /* On platforms that require manual core installation/
-     * removal, placing core info files in the same directory
-@@ -1802,27 +1802,27 @@ static void frontend_unix_get_env(int *argc,
-    fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], base_path,
-          "core_info", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
- #else
--   fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], base_path,
--         "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
-+   fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], "@libretro_info_path@",
-+         "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
- #endif
-    fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUTOCONFIG], base_path,
-          "autoconfig", sizeof(g_defaults.dirs[DEFAULT_DIR_AUTOCONFIG]));
- 
--   if (path_is_directory("/usr/local/share/retroarch/assets"))
-+   if (path_is_directory("@out@/local/share/retroarch/assets"))
-       fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_ASSETS],
--            "/usr/local/share/retroarch",
-+            "@out@/local/share/retroarch",
-             "assets", sizeof(g_defaults.dirs[DEFAULT_DIR_ASSETS]));
--   else if (path_is_directory("/usr/share/retroarch/assets"))
-+   else if (path_is_directory("@out@/share/retroarch/assets"))
-       fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_ASSETS],
--            "/usr/share/retroarch",
-+            "@out@/share/retroarch",
-             "assets", sizeof(g_defaults.dirs[DEFAULT_DIR_ASSETS]));
--   else if (path_is_directory("/usr/local/share/games/retroarch/assets"))
-+   else if (path_is_directory("@out@/local/share/games/retroarch/assets"))
-       fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_ASSETS],
--            "/usr/local/share/games/retroarch",
-+            "@out@/local/share/games/retroarch",
-             "assets", sizeof(g_defaults.dirs[DEFAULT_DIR_ASSETS]));
--   else if (path_is_directory("/usr/share/games/retroarch/assets"))
-+   else if (path_is_directory("@out@/share/games/retroarch/assets"))
-       fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_ASSETS],
--            "/usr/share/games/retroarch",
-+            "@out@/share/games/retroarch",
-             "assets", sizeof(g_defaults.dirs[DEFAULT_DIR_ASSETS]));
-    else
-       fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_ASSETS], base_path,
-@@ -1834,41 +1834,41 @@ static void frontend_unix_get_env(int *argc,
-    fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER], base_path,
-          "filters/video", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER]));
- #else
--   if (path_is_directory("/usr/local/share/retroarch/filters/audio"))
-+   if (path_is_directory("@out@/local/share/retroarch/filters/audio"))
-       fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER],
--            "/usr/local/share/retroarch",
-+            "@out@/local/share/retroarch",
-             "filters/audio", sizeof(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER]));
--   else if (path_is_directory("/usr/share/retroarch/filters/audio"))
-+   else if (path_is_directory("@out@/share/retroarch/filters/audio"))
-       fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER],
--            "/usr/share/retroarch",
-+            "@out@/share/retroarch",
-             "filters/audio", sizeof(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER]));
--   else if (path_is_directory("/usr/local/share/games/retroarch/filters/audio"))
-+   else if (path_is_directory("@out@/local/share/games/retroarch/filters/audio"))
-       fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER],
--            "/usr/local/share/games/retroarch",
-+            "@out@/local/share/games/retroarch",
-             "filters/audio", sizeof(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER]));
--   else if (path_is_directory("/usr/share/games/retroarch/filters/audio"))
-+   else if (path_is_directory("@out@/share/games/retroarch/filters/audio"))
-       fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER],
--            "/usr/share/games/retroarch",
-+            "@out@/share/games/retroarch",
-             "filters/audio", sizeof(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER]));
-    else
-       fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER], base_path,
-             "filters/audio", sizeof(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER]));
- 
--   if (path_is_directory("/usr/local/share/retroarch/filters/video"))
-+   if (path_is_directory("@out@/local/share/retroarch/filters/video"))
-       fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER],
--            "/usr/local/share/retroarch",
-+            "@out@/local/share/retroarch",
-             "filters/video", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER]));
--   else if (path_is_directory("/usr/share/retroarch/filters/video"))
-+   else if (path_is_directory("@out@/share/retroarch/filters/video"))
-       fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER],
--            "/usr/share/retroarch",
-+            "@out@/share/retroarch",
-             "filters/video", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER]));
--   else if (path_is_directory("/usr/local/share/games/retroarch/filters/video"))
-+   else if (path_is_directory("@out@/local/share/games/retroarch/filters/video"))
-       fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER],
--            "/usr/local/share/games/retroarch",
-+            "@out@/local/share/games/retroarch",
-             "filters/video", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER]));
--   else if (path_is_directory("/usr/share/games/retroarch/filters/video"))
-+   else if (path_is_directory("@out@/share/games/retroarch/filters/video"))
-       fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER],
--            "/usr/share/games/retroarch",
-+            "@out@/share/games/retroarch",
-             "filters/video", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER]));
-    else
-       fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER], base_path,
--- 
-2.37.3
-
diff --git a/pkgs/applications/emulators/retroarch/wrapper.nix b/pkgs/applications/emulators/retroarch/wrapper.nix
index 535cd40db6c34..4136d263eac4c 100644
--- a/pkgs/applications/emulators/retroarch/wrapper.nix
+++ b/pkgs/applications/emulators/retroarch/wrapper.nix
@@ -1,41 +1,48 @@
-{ stdenv, lib, makeWrapper, retroarch, cores ? [ ] }:
-
-stdenv.mkDerivation {
-  pname = "retroarch";
-  version = lib.getVersion retroarch;
+{ lib
+, stdenv
+, makeWrapper
+, retroarch
+, symlinkJoin
+, writeTextDir
+, cores ? [ ]
+}:
+
+let
+  # All cores should be located in the same path after symlinkJoin,
+  # but let's be safe here
+  coresPath = lib.lists.unique (map (c: c.libretroCore) cores);
+  wrapperArgs = lib.strings.escapeShellArgs
+    (lib.lists.flatten
+      (map (p: [ "--add-flags" "-L ${placeholder "out" + p}" ]) coresPath));
+in
+symlinkJoin {
+  name = "retroarch-with-cores-${lib.getVersion retroarch}";
+
+  paths = [ retroarch ] ++ cores;
 
   nativeBuildInputs = [ makeWrapper ];
 
-  buildCommand = ''
-    mkdir -p $out/lib
-    for coreDir in $cores; do
-      ln -s $coreDir/* $out/lib/.
-    done
-
-    ln -s -t $out ${retroarch}/share
+  passthru = {
+    inherit cores;
+    unwrapped = retroarch;
+  };
 
-    if [ -d ${retroarch}/Applications ]; then
-      ln -s -t $out ${retroarch}/Applications
-    fi
+  postBuild = ''
+    # remove core specific binaries
+    find $out/bin -name 'retroarch-*' -type l -delete
 
-    makeWrapper ${retroarch}/bin/retroarch $out/bin/retroarch \
-      --suffix-each LD_LIBRARY_PATH ':' "$cores" \
-      --add-flags "-L $out/lib/" \
+    # wrap binary to load cores from the proper location(s)
+    wrapProgram $out/bin/retroarch ${wrapperArgs}
   '';
 
-  cores = map (x: x + x.libretroCore) cores;
-  preferLocalBuild = true;
-
   meta = with retroarch.meta; {
     inherit changelog description homepage license maintainers platforms;
     longDescription = ''
       RetroArch is the reference frontend for the libretro API.
-
-      The following cores are included:
-      ${lib.concatStringsSep "\n" (map (x: "  - ${x.name}") cores)}
+    ''
+    + lib.optionalString (cores != [ ]) ''
+      The following cores are included: ${lib.concatStringsSep ", " (map (c: c.core) cores)}
     '';
-    # FIXME: exit with error on macOS:
-    # No Info.plist file in application bundle or no NSPrincipalClass in the Info.plist file, exiting
-    broken = stdenv.isDarwin;
+    mainProgram = "retroarch";
   };
 }
diff --git a/pkgs/applications/emulators/rpcs3/default.nix b/pkgs/applications/emulators/rpcs3/default.nix
index f1432d8db5585..b88e5f2647290 100644
--- a/pkgs/applications/emulators/rpcs3/default.nix
+++ b/pkgs/applications/emulators/rpcs3/default.nix
@@ -9,10 +9,10 @@
 
 let
   # Keep these separate so the update script can regex them
-  rpcs3GitVersion = "14337-5210df688";
-  rpcs3Version = "0.0.24-14337-5210df688";
-  rpcs3Revision = "5210df688262ec7fd8c21230d30e568d98724c8f";
-  rpcs3Sha256 = "1m0j53xl6g01s27bi2p9j23m724gq7a3hss7kqhc239a5m9akqdg";
+  rpcs3GitVersion = "14358-a00f9e421";
+  rpcs3Version = "0.0.25-14358-a00f9e421";
+  rpcs3Revision = "a00f9e42115527aa9654870f194cf2c64329f2ef";
+  rpcs3Sha256 = "0avajihbs02nbfqs4kzgckl0v2z4z8h8fgcjs5m4zxvkgj5701nv";
 
   ittapi = fetchFromGitHub {
     owner = "intel";
diff --git a/pkgs/applications/emulators/uxn/default.nix b/pkgs/applications/emulators/uxn/default.nix
index 0b797e2e160b7..935207321c5a9 100644
--- a/pkgs/applications/emulators/uxn/default.nix
+++ b/pkgs/applications/emulators/uxn/default.nix
@@ -4,15 +4,15 @@
 , SDL2
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation {
   pname = "uxn";
-  version = "0.pre+unstable=2021-08-30";
+  version = "unstable-2022-10-22";
 
   src = fetchFromSourcehut {
     owner = "~rabbits";
-    repo = pname;
-    rev = "a2e40d9d10c11ef48f4f93d0dc86f5085b4263ce";
-    hash = "sha256-/hxDYi814nQydm2iQk4NID4vpJ3BcBcM6NdL0iuZk5M=";
+    repo = "uxn";
+    rev = "1b2049e238df96f32335edf1c6db35bd09f8b42d";
+    hash = "sha256-lwms+qUelfpTC+i2m5b3dW7ww9298YMPFdPVsFrwcDQ=";
   };
 
   buildInputs = [
@@ -21,14 +21,14 @@ stdenv.mkDerivation rec {
 
   dontConfigure = true;
 
-  # It is easier to emulate build.sh script
+  postPatch = ''
+     sed -i -e 's|UXNEMU_LDFLAGS="$(brew.*$|UXNEMU_LDFLAGS="$(sdl2-config --cflags --libs)"|' build.sh
+  '';
+
   buildPhase = ''
     runHook preBuild
 
-    cc -std=c89 -Wall -Wno-unknown-pragmas src/uxnasm.c -o uxnasm
-    cc -std=c89 -Wall -Wno-unknown-pragmas src/uxn.c src/uxncli.c -o uxncli
-    cc -std=c89 -Wall -Wno-unknown-pragmas src/uxn.c src/devices/ppu.c \
-       src/devices/apu.c src/uxnemu.c $(sdl2-config --cflags --libs) -o uxnemu
+    ./build.sh --no-run
 
     runHook postBuild
   '';
@@ -36,10 +36,10 @@ stdenv.mkDerivation rec {
   installPhase = ''
     runHook preInstall
 
-    install -d $out/bin/ $out/share/${pname}/
+    install -d $out/bin/ $out/share/uxn/
 
-    cp uxnasm uxncli uxnemu $out/bin/
-    cp -r projects $out/share/${pname}/
+    cp bin/uxnasm bin/uxncli bin/uxnemu $out/bin/
+    cp -r projects $out/share/uxn/
 
     runHook postInstall
   '';
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     homepage = "https://wiki.xxiivv.com/site/uxn.html";
     description = "An assembler and emulator for the Uxn stack machine";
     license = with licenses; [ mit ];
-    maintainers = with maintainers; [ AndersonTorres ];
+    maintainers = with maintainers; [ AndersonTorres kototama ];
     platforms = with platforms; unix;
   };
 }
diff --git a/pkgs/applications/file-managers/xfe/default.nix b/pkgs/applications/file-managers/xfe/default.nix
index 1603639378402..92b3fae315968 100644
--- a/pkgs/applications/file-managers/xfe/default.nix
+++ b/pkgs/applications/file-managers/xfe/default.nix
@@ -1,4 +1,18 @@
-{ lib, stdenv, fetchurl, fox, pkg-config, gettext, xlibsWrapper, xcbutil, gcc, intltool, file, libpng }:
+{ lib
+, stdenv
+, fetchurl
+, fox
+, fontconfig
+, freetype
+, pkg-config
+, gettext
+, xcbutil
+, gcc
+, intltool
+, file
+, libpng
+, xorg
+}:
 
 stdenv.mkDerivation rec {
   pname = "xfe";
@@ -10,7 +24,18 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ pkg-config intltool ];
-  buildInputs = [ fox gettext xlibsWrapper xcbutil gcc file libpng ];
+  buildInputs = [
+    fox
+    gettext
+    xcbutil
+    gcc
+    file
+    libpng
+    fontconfig
+    freetype
+    xorg.libX11
+    xorg.libXft
+  ];
 
   preConfigure = ''
     sed -i s,/usr/share/xfe,$out/share/xfe, src/xfedefs.h
diff --git a/pkgs/applications/gis/saga/default.nix b/pkgs/applications/gis/saga/default.nix
index db7278c23bd3b..3fd7a488e40b5 100644
--- a/pkgs/applications/gis/saga/default.nix
+++ b/pkgs/applications/gis/saga/default.nix
@@ -7,7 +7,7 @@
 , pkg-config
 # not native
 , gdal
-, wxGTK31-gtk3
+, wxGTK31
 , proj
 , dxflib
 , curl
@@ -56,7 +56,7 @@ mkDerivation rec {
     libsvm
     hdf5
     gdal
-    wxGTK31-gtk3
+    wxGTK31
     proj
     libharu
     opencv
diff --git a/pkgs/applications/graphics/batik/default.nix b/pkgs/applications/graphics/batik/default.nix
index ee6403271ce5c..ca1639f811edd 100644
--- a/pkgs/applications/graphics/batik/default.nix
+++ b/pkgs/applications/graphics/batik/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "batik";
-  version = "1.15";
+  version = "1.16";
 
   src = fetchurl {
     url = "mirror://apache/xmlgraphics/batik/binaries/batik-bin-${version}.tar.gz";
-    sha256 = "sha256-NYo7+8DikUmDsioM1Q1YW1s3KwsQeTnwIKDr+RHxxyo=";
+    sha256 = "sha256-Y4bJ6X46sKx1+fmNkOS2RU7gn7n0fKDnkOYMq0S8fYM=";
   };
 
   meta = with lib; {
diff --git a/pkgs/applications/graphics/hydrus/default.nix b/pkgs/applications/graphics/hydrus/default.nix
index 58fc646cce8d1..2bce94d52d814 100644
--- a/pkgs/applications/graphics/hydrus/default.nix
+++ b/pkgs/applications/graphics/hydrus/default.nix
@@ -1,7 +1,7 @@
 { lib
 , fetchFromGitHub
 , wrapQtAppsHook
-, miniupnpc_2
+, miniupnpc
 , ffmpeg
 , enableSwftools ? false
 , swftools
@@ -108,7 +108,7 @@ python3Packages.buildPythonPackage rec {
   dontWrapQtApps = true;
   preFixup = ''
     makeWrapperArgs+=("''${qtWrapperArgs[@]}")
-    makeWrapperArgs+=(--prefix PATH : ${lib.makeBinPath [ ffmpeg miniupnpc_2 ]})
+    makeWrapperArgs+=(--prefix PATH : ${lib.makeBinPath [ ffmpeg miniupnpc ]})
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/graphics/inkscape/default.nix b/pkgs/applications/graphics/inkscape/default.nix
index 83fd78c631340..8a40bac446e88 100644
--- a/pkgs/applications/graphics/inkscape/default.nix
+++ b/pkgs/applications/graphics/inkscape/default.nix
@@ -5,6 +5,7 @@
 , cairo
 , cmake
 , fetchurl
+, fetchpatch
 , gettext
 , ghostscript
 , glib
@@ -78,6 +79,12 @@ stdenv.mkDerivation rec {
       # e.g., those from the "Effects" menu.
       python3 = "${python3Env}/bin/python";
     })
+
+    # Fix build with Poppler 22.09
+    (fetchpatch {
+      url = "https://github.com/archlinux/svntogit-packages/raw/b2f65dfb60ae0c8cd6cd9affd3d71064082a6201/trunk/inkscape-1.2.1-poppler-22.09.0.patch";
+      sha256 = "pArvsS/qoCTMAisF8yj3agZKrb90zRFZkck1TX0KeGc=";
+    })
   ];
 
   postPatch = ''
diff --git a/pkgs/applications/graphics/rnote/default.nix b/pkgs/applications/graphics/rnote/default.nix
index b5964adbbca96..eb0eaaeda95d1 100644
--- a/pkgs/applications/graphics/rnote/default.nix
+++ b/pkgs/applications/graphics/rnote/default.nix
@@ -3,6 +3,8 @@
 , fetchFromGitHub
 , alsa-lib
 , appstream-glib
+, clang
+, cmake
 , desktop-file-utils
 , gio-sharp
 , glib
@@ -22,24 +24,26 @@
 
 stdenv.mkDerivation rec {
   pname = "rnote";
-  version = "0.5.4";
+  version = "0.5.7";
 
   src = fetchFromGitHub {
     owner = "flxzt";
     repo = "rnote";
     rev = "v${version}";
     fetchSubmodules = true;
-    hash = "sha256-CZLZblC10k5ynzDDXi/bOe6Rc6M94eywXjyu0ABOVq4=";
+    hash = "sha256-w4y+t8idcaNwvC2Wp9SRjcd4m23Zt+yHG2fjOA2rBU8=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
-    hash = "sha256-Udat35KqrMWR0Ckx34BWoF0HiJHZ5CP2CGFD6FNCWRA=";
+    hash = "sha256-Hybbbokru4vz5ly3oZuNGdBa+lYbhdYjESUpRxIUqJc=";
   };
 
   nativeBuildInputs = [
     appstream-glib # For appstream-util
+    clang
+    cmake
     desktop-file-utils # For update-desktop-database
     meson
     ninja
@@ -52,6 +56,8 @@ stdenv.mkDerivation rec {
     wrapGAppsHook4
   ];
 
+  dontUseCmakeConfigure = true;
+
   buildInputs = [
     alsa-lib
     gio-sharp
@@ -63,6 +69,8 @@ stdenv.mkDerivation rec {
     poppler
   ];
 
+  LIBCLANG_PATH = "${clang.cc.lib}/lib";
+
   postPatch = ''
     pushd build-aux
     chmod +x meson_post_install.py
diff --git a/pkgs/applications/graphics/vengi-tools/default.nix b/pkgs/applications/graphics/vengi-tools/default.nix
index d54d4e06f0d46..a7b289e33b397 100644
--- a/pkgs/applications/graphics/vengi-tools/default.nix
+++ b/pkgs/applications/graphics/vengi-tools/default.nix
@@ -29,13 +29,13 @@
 
 stdenv.mkDerivation rec {
   pname = "vengi-tools";
-  version = "0.0.21";
+  version = "0.0.22";
 
   src = fetchFromGitHub {
     owner = "mgerhardy";
     repo = "vengi";
     rev = "v${version}";
-    sha256 = "sha256-T9YBU/YhhOASdKnzLcwQGBLc4HcQspiOV9VRgotfq3c=";
+    sha256 = "sha256-OlOnr1Spy8kdie9CyLVOQkY1+ib6Uwcd/xP5TSaZkYg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/graphics/xfig/default.nix b/pkgs/applications/graphics/xfig/default.nix
index 23d56c8ec727f..69190511ed698 100644
--- a/pkgs/applications/graphics/xfig/default.nix
+++ b/pkgs/applications/graphics/xfig/default.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchurl
-, xlibsWrapper
 , makeWrapper
 , imagemagick
 , libXpm
@@ -25,7 +24,6 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ imagemagick makeWrapper ];
 
   buildInputs = [
-    xlibsWrapper
     libXpm
     libXmu
     libXi
diff --git a/pkgs/applications/graphics/xmountains/default.nix b/pkgs/applications/graphics/xmountains/default.nix
index c31f7923c9901..61020e678c307 100644
--- a/pkgs/applications/graphics/xmountains/default.nix
+++ b/pkgs/applications/graphics/xmountains/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, xlibsWrapper, xorg }:
+{ lib, stdenv, fetchFromGitHub, xorg }:
 
 stdenv.mkDerivation rec {
   pname = "xmountains";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "0dx4n2y736lv04sj41cp1dw8n5zkw5gyd946a6zsiv0k796s9ra9";
   };
 
-  buildInputs = [ xlibsWrapper xorg.xbitmaps ];
+  buildInputs = [ xorg.xbitmaps xorg.libX11 ];
   nativeBuildInputs = with xorg; [ imake gccmakedep ];
 
   installPhase = "install -Dm755 xmountains -t $out/bin";
diff --git a/pkgs/applications/misc/ausweisapp2/default.nix b/pkgs/applications/misc/ausweisapp2/default.nix
index 7ad32e678f5f4..85579f0521961 100644
--- a/pkgs/applications/misc/ausweisapp2/default.nix
+++ b/pkgs/applications/misc/ausweisapp2/default.nix
@@ -3,13 +3,13 @@
 
 mkDerivation rec {
   pname = "AusweisApp2";
-  version = "1.24.2";
+  version = "1.24.4";
 
   src = fetchFromGitHub {
     owner = "Governikus";
     repo = "AusweisApp2";
     rev = version;
-    sha256 = "sha256-p38zcTFbCyImiGVCr5o/QQ6BT8U2SMiHeYE3aTNYpJs=";
+    sha256 = "sha256-YO0K8L03n/KQcINRKwls8BxG8nv5k3Myd95AU8agigI=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
diff --git a/pkgs/applications/misc/blender/default.nix b/pkgs/applications/misc/blender/default.nix
index e6bdd340c9795..1d617718ff905 100644
--- a/pkgs/applications/misc/blender/default.nix
+++ b/pkgs/applications/misc/blender/default.nix
@@ -28,11 +28,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "blender";
-  version = "3.3.0";
+  version = "3.3.1";
 
   src = fetchurl {
     url = "https://download.blender.org/source/${pname}-${version}.tar.xz";
-    hash = "sha256-IsUaTmY4XLFIGKpNdtz3+m1uEDr7DTaRbhLqFZiNIfA=";
+    hash = "sha256-KtpI8L+KDKgCuYfXV0UgEuH48krPTSNFOwnC1ZURjMo=";
   };
 
   patches = lib.optional stdenv.isDarwin ./darwin.patch;
diff --git a/pkgs/applications/misc/darkman/default.nix b/pkgs/applications/misc/darkman/default.nix
index a6c32d2ba89f4..22ed4bea8eefa 100644
--- a/pkgs/applications/misc/darkman/default.nix
+++ b/pkgs/applications/misc/darkman/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "darkman";
-  version = "1.3.1";
+  version = "1.4.0";
 
   src = fetchFromGitLab {
     owner = "WhyNotHugo";
     repo = "darkman";
     rev = "v${version}";
-    sha256 = "09iwc9cwwc88c6yrf6a552nbsnf1w8cnlra9axsar2p0k21v5yl1";
+    sha256 = "sha256-Q/pjQmlyREl32C0LiwypEz1qBw2AeBOZbUIwNP392Sc=";
   };
 
   vendorSha256 = "09rjqw6v1jaf0mhmycw9mcay9q0y1fya2azj8216gdgkl48ics08";
diff --git a/pkgs/applications/misc/dstask/default.nix b/pkgs/applications/misc/dstask/default.nix
index 4e03059a8cc4a..5cfb8c7039eb6 100644
--- a/pkgs/applications/misc/dstask/default.nix
+++ b/pkgs/applications/misc/dstask/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "dstask";
-  version = "0.23.1";
+  version = "0.25";
 
   src = fetchFromGitHub {
     owner = "naggie";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0rfz8jim0xqcwdb5n28942v9r3hbvhjrwdgzvbwc9f9psqg2s8d2";
+    sha256 = "sha256-nsEn9ZhrSWO0kltyEXaehMcFpqVbivSsXOxu/AX7A9U=";
   };
 
   # Set vendorSha256 to null because dstask vendors its dependencies (meaning
@@ -30,8 +30,6 @@ buildGoModule rec {
     "-X github.com/naggie/dstask.GIT_COMMIT=v${version}"
   ];
 
-  subPackages = [ "cmd/dstask.go" ];
-
   meta = with lib; {
     description = "Command line todo list with super-reliable git sync";
     homepage = src.meta.homepage;
diff --git a/pkgs/applications/misc/fluidd/default.nix b/pkgs/applications/misc/fluidd/default.nix
index 39c1aba35627c..b92110f99d98f 100644
--- a/pkgs/applications/misc/fluidd/default.nix
+++ b/pkgs/applications/misc/fluidd/default.nix
@@ -2,12 +2,12 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "fluidd";
-  version = "1.20.1";
+  version = "1.21.1";
 
   src = fetchurl {
     name = "fluidd-v${version}.zip";
     url = "https://github.com/cadriel/fluidd/releases/download/v${version}/fluidd.zip";
-    sha256 = "sha256-CA0C3yERT6r33GdtCZ7UZheEhDL4uzjAvcuhZeZQLvg=";
+    sha256 = "sha256-TahXPbZy7eoSJ/U2wL6GaMM8F6zypf7EU91JVWlevQg=";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/pkgs/applications/misc/gallery-dl/default.nix b/pkgs/applications/misc/gallery-dl/default.nix
index ead8475e4346e..602c5c0e47e95 100644
--- a/pkgs/applications/misc/gallery-dl/default.nix
+++ b/pkgs/applications/misc/gallery-dl/default.nix
@@ -1,17 +1,24 @@
 { lib, buildPythonApplication, fetchPypi, requests, yt-dlp, pytestCheckHook }:
 
 buildPythonApplication rec {
-  pname = "gallery_dl";
-  version = "1.23.3";
+  pname = "gallery-dl";
+  version = "1.23.5";
+  format = "setuptools";
 
   src = fetchPypi {
-    inherit pname version;
-    sha256 = "sha256-CoZN0cLXSujZRSGFX3dsNGuvgupa4t1VrEoW+Zu41yw=";
+    inherit version;
+    pname = "gallery_dl";
+    sha256 = "sha256-NhnuW7rq5Dgrnkw/nUO/pFg/Sh2D/d9gFCIb+gQy5QE=";
   };
 
-  propagatedBuildInputs = [ requests yt-dlp ];
+  propagatedBuildInputs = [
+    requests
+    yt-dlp
+  ];
 
-  checkInputs = [ pytestCheckHook ];
+  checkInputs = [
+    pytestCheckHook
+  ];
 
   pytestFlagsArray = [
     # requires network access
@@ -22,7 +29,9 @@ buildPythonApplication rec {
     "--ignore=test/test_ytdl.py"
   ];
 
-  pythonImportsCheck = [ "gallery_dl" ];
+  pythonImportsCheck = [
+    "gallery_dl"
+  ];
 
   meta = with lib; {
     description = "Command-line program to download image-galleries and -collections from several image hosting sites";
diff --git a/pkgs/applications/misc/hugo/default.nix b/pkgs/applications/misc/hugo/default.nix
index d57f2270daf18..2340f6a5f4f5c 100644
--- a/pkgs/applications/misc/hugo/default.nix
+++ b/pkgs/applications/misc/hugo/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "hugo";
-  version = "0.104.3";
+  version = "0.105.0";
 
   src = fetchFromGitHub {
     owner = "gohugoio";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-bGyU0i/wwFprAoLENrmBY2IxLjwyX4pQ9z4LFIUguI4=";
+    sha256 = "sha256-qKcybKgdNkn3AhDVwl1vCYt0HoQimz8qi+O95jKaW8Q=";
   };
 
-  vendorSha256 = "sha256-is1dQJwvhygn95rbeHeGI97vDXo8ftnNqug4eERN3gI=";
+  vendorSha256 = "sha256-M74pfS7bmSrXhUvQ3hDokBPNLYxJslc9UGR3Bhp2BBQ=";
 
   doCheck = false;
 
diff --git a/pkgs/applications/misc/jgmenu/default.nix b/pkgs/applications/misc/jgmenu/default.nix
index 45014ad81c9e3..55617ed4f651f 100644
--- a/pkgs/applications/misc/jgmenu/default.nix
+++ b/pkgs/applications/misc/jgmenu/default.nix
@@ -11,17 +11,18 @@
 , enableXfcePanelApplet ? false
 , xfce
 , gtk3
+, gitUpdater
 }:
 
 stdenv.mkDerivation rec {
   pname = "jgmenu";
-  version = "4.4.0";
+  version = "4.4.1";
 
   src = fetchFromGitHub {
     owner = "johanmalm";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-REzrN4tz+cFmKyJeOPOkzjvthsJdY3GButF7RdnzviE=";
+    sha256 = "sha256-UC92zyuMVjyMLNEOBMElO8wCWYgwWRZAGLEOdTPNMak=";
   };
 
   nativeBuildInputs = [
@@ -57,6 +58,8 @@ stdenv.mkDerivation rec {
     done
   '';
 
+  passthru.updateScript = gitUpdater { rev-prefix = "v"; };
+
   meta = with lib; {
     homepage = "https://github.com/johanmalm/jgmenu";
     description = "Small X11 menu intended to be used with openbox and tint2";
diff --git a/pkgs/applications/misc/josm/default.nix b/pkgs/applications/misc/josm/default.nix
index aecd7a4b09001..7b2973b5075e7 100644
--- a/pkgs/applications/misc/josm/default.nix
+++ b/pkgs/applications/misc/josm/default.nix
@@ -3,15 +3,15 @@
 }:
 let
   pname = "josm";
-  version = "18570";
+  version = "18583";
   srcs = {
     jar = fetchurl {
       url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
-      hash = "sha256-EAEh/n7M56rzjtkIs8ZteDvOLuHxNsMyT7VGFyPre6s=";
+      hash = "sha256-6S6E7ngTCBXb0epPfYxIswLvfm9r2Ql0wgOs/PxpmIM=";
     };
     macosx = fetchurl {
       url = "https://josm.openstreetmap.de/download/macosx/josm-macos-${version}-java17.zip";
-      hash = "sha256-2xsHsaDxm/wjiCyS5tmD8uUlLrBdd3sS8JLal3pX3pA=";
+      hash = "sha256-3XEoSCXEpeqZj1y4nns5+0JR1SINYE1rsmQ4fMflxRQ=";
     };
     pkg = fetchsvn {
       url = "https://josm.openstreetmap.de/svn/trunk/native/linux/tested";
diff --git a/pkgs/applications/misc/keepassx/community.nix b/pkgs/applications/misc/keepassx/community.nix
index d7838661d0fee..258a2a51e72dc 100644
--- a/pkgs/applications/misc/keepassx/community.nix
+++ b/pkgs/applications/misc/keepassx/community.nix
@@ -40,13 +40,13 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "keepassxc";
-  version = "2.7.3";
+  version = "2.7.4";
 
   src = fetchFromGitHub {
     owner = "keepassxreboot";
     repo = "keepassxc";
     rev = version;
-    sha256 = "sha256-mtOnUB6+iBBqgPT5KKhEX4M7UUM3s5fT0OTePE6THXw=";
+    sha256 = "sha256-amedKK9nplLVJTldeabN3/c+g/QesrdH+qx+rba2/4s=";
   };
 
   NIX_CFLAGS_COMPILE = optionalString stdenv.cc.isClang [
diff --git a/pkgs/applications/misc/logseq/default.nix b/pkgs/applications/misc/logseq/default.nix
index c79b709686154..26d5c3b65a368 100644
--- a/pkgs/applications/misc/logseq/default.nix
+++ b/pkgs/applications/misc/logseq/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "logseq";
-  version = "0.8.9";
+  version = "0.8.10";
 
   src = fetchurl {
     url = "https://github.com/logseq/logseq/releases/download/${version}/logseq-linux-x64-${version}.AppImage";
-    sha256 = "sha256-s9xG2SLkuaz8wRK47ywSw9JjsJlRjaMNeRmQY0ZnrK8=";
+    sha256 = "sha256-n6uRMkV/+U2M0/FjQJx0LIDGgeIX6TY58j2sweSmlbc=";
     name = "${pname}-${version}.AppImage";
   };
 
diff --git a/pkgs/applications/misc/lutris/fhsenv.nix b/pkgs/applications/misc/lutris/fhsenv.nix
index 278d2c363bdb7..5c39576ac6f3b 100644
--- a/pkgs/applications/misc/lutris/fhsenv.nix
+++ b/pkgs/applications/misc/lutris/fhsenv.nix
@@ -126,6 +126,15 @@ in buildFHSUserEnv {
     ln -sf ${lutris-unwrapped}/share/icons $out/share
   '';
 
+  # allows for some gui applications to share IPC
+  # this fixes certain issues where they don't render correctly
+  unshareIpc = false;
+
+  # Some applications such as Natron need access to MIT-SHM or other
+  # shared memory mechanisms. Unsharing the pid namespace
+  # breaks the ability for application to reference shared memory.
+  unsharePid = false;
+
   meta = {
     inherit (lutris-unwrapped.meta)
       homepage
diff --git a/pkgs/applications/misc/mediaelch/default.nix b/pkgs/applications/misc/mediaelch/default.nix
index 2381e89640af9..2db12da257586 100644
--- a/pkgs/applications/misc/mediaelch/default.nix
+++ b/pkgs/applications/misc/mediaelch/default.nix
@@ -18,13 +18,13 @@
 
 mkDerivation rec {
   pname = "mediaelch";
-  version = "2.8.16";
+  version = "2.8.18";
 
   src = fetchFromGitHub {
     owner = "Komet";
     repo = "MediaElch";
     rev = "v${version}";
-    sha256 = "sha256-83bHfIRVAC+3RkCYmV+TBjjQxaFMHfVyxt5Jq44dzeI=";
+    sha256 = "sha256-9kwU9j8YNF/OmzrQaRAlBpW+t/tIpZJw5+pfEoTmCBA=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/applications/misc/metadata-cleaner/default.nix b/pkgs/applications/misc/metadata-cleaner/default.nix
index 08f91765de0ed..5afd0a615b599 100644
--- a/pkgs/applications/misc/metadata-cleaner/default.nix
+++ b/pkgs/applications/misc/metadata-cleaner/default.nix
@@ -18,22 +18,23 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "metadata-cleaner";
-  version = "2.2.3";
+  version = "2.2.5";
 
   format = "other";
 
   src = fetchFromGitLab {
     owner = "rmnvgr";
-    repo = "metadata-cleaner";
+    repo = pname;
     rev = "v${version}";
-    hash = "sha256-ykJd1ZjAqT8OtJsZiSjbDdkN5fFlQcWtTO88x3zAfU8=";
+    hash = "sha256-Yb5tCvhVg9p4v7++MmoaeQDyP1qdfpHM+IGj8BoacVs=";
   };
 
   nativeBuildInputs = [
     appstream
     desktop-file-utils
-    glib
-    gtk4
+    glib # glib-compile-resources
+    gtk4 # gtk4-update-icon-cache
+    gobject-introspection
     itstool
     meson
     ninja
@@ -42,7 +43,7 @@ python3.pkgs.buildPythonApplication rec {
   ];
 
   buildInputs = [
-    gobject-introspection
+    glib
     gtk4
     libadwaita
     librsvg
diff --git a/pkgs/applications/misc/obsidian/default.nix b/pkgs/applications/misc/obsidian/default.nix
index 2ef17f9c1cdf3..85ef0c436691f 100644
--- a/pkgs/applications/misc/obsidian/default.nix
+++ b/pkgs/applications/misc/obsidian/default.nix
@@ -12,7 +12,7 @@
 let
   inherit (stdenv.hostPlatform) system;
   pname = "obsidian";
-  version = "1.0.0";
+  version = "1.0.3";
   appname = "Obsidian";
   meta = with lib; {
     description = "A powerful knowledge base that works on top of a local folder of plain text Markdown files";
@@ -25,7 +25,7 @@ let
   filename = if stdenv.isDarwin then "Obsidian-${version}-universal.dmg" else "obsidian-${version}.tar.gz";
   src = fetchurl {
     url = "https://github.com/obsidianmd/obsidian-releases/releases/download/v${version}/${filename}";
-    sha256 = if stdenv.isDarwin then "sha256-KVWqdXzbQT93Dj4yesdnfFwAdYin1vfpPsj/ur1AGA0=" else "sha256-H1Cl9SBz/mwN8gezFkcV4KxI7+xVjQV2AtyLKyjVpI8=";
+    sha256 = if stdenv.isDarwin then "sha256-DYF9fEpZaP4tD/eeZAegDahR7UZyroqNB9bn2U7sgXs=" else "sha256-MpQk5g4184ZkCAjLU5Ug0ReWgVADskS1QuMcnPdNofs=";
   };
 
   icon = fetchurl {
diff --git a/pkgs/applications/misc/oneko/default.nix b/pkgs/applications/misc/oneko/default.nix
index e8399aeb098fe..17a94511e3fce 100644
--- a/pkgs/applications/misc/oneko/default.nix
+++ b/pkgs/applications/misc/oneko/default.nix
@@ -1,4 +1,11 @@
-{ lib, stdenv, fetchFromGitHub, imake, gccmakedep, xlibsWrapper }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, imake
+, gccmakedep
+, libX11
+, libXext
+}:
 
 stdenv.mkDerivation rec {
   version_name = "1.2.hanami.6";
@@ -11,7 +18,7 @@ stdenv.mkDerivation rec {
     sha256 = "0vx12v5fm8ar3f1g6jbpmd3b1q652d32nc67ahkf28djbqjgcbnc";
   };
   nativeBuildInputs = [ imake gccmakedep ];
-  buildInputs = [ xlibsWrapper ];
+  buildInputs = [ libX11 libXext ];
 
   makeFlags = [ "BINDIR=$(out)/bin" "MANPATH=$(out)/share/man" ];
   installTargets = [ "install" "install.man" ];
diff --git a/pkgs/applications/misc/passky-desktop/default.nix b/pkgs/applications/misc/passky-desktop/default.nix
index f247329158ace..97df6ba94daef 100644
--- a/pkgs/applications/misc/passky-desktop/default.nix
+++ b/pkgs/applications/misc/passky-desktop/default.nix
@@ -2,16 +2,16 @@
 
 let
   pname = "passky-desktop";
-  version = "5.0.0";
+  version = "7.1.0";
 
   srcs = {
     x86_64-linux = fetchurl {
       url = "https://github.com/Rabbit-Company/Passky-Desktop/releases/download/v${version}/Passky-${version}.AppImage";
-      sha256 = "19sy9y2bcxrf10ifszinh4yn32q3032h3d1qxm046zffzl069807";
+      sha256 = "1xnhrmmm018mmyzjq05mhbf673f0n81fh1k3kbfarbgk2kbwpq6y";
     };
     x86_64-darwin = fetchurl {
       url = "https://github.com/Rabbit-Company/Passky-Desktop/releases/download/v${version}/Passky-${version}.dmg";
-      sha256 = "sha256-lclJOaYe+2XeKhJb2WcOAzjBMzK3YEmlS4rXuRUJYU0=";
+      sha256 = "0mm7hk4v7zvpjdqyw3nhk33x72j0gh3f59bx3q18azlm4dr61r2d";
     };
   };
   src = srcs.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
diff --git a/pkgs/applications/misc/plover/default.nix b/pkgs/applications/misc/plover/default.nix
index 6bd4ee6b3c181..eadd7672bec5d 100644
--- a/pkgs/applications/misc/plover/default.nix
+++ b/pkgs/applications/misc/plover/default.nix
@@ -1,5 +1,4 @@
-{ lib, fetchFromGitHub, python27Packages, python3Packages, wmctrl,
-  qtbase, mkDerivationWith }:
+{ lib, fetchFromGitHub, python3Packages, wmctrl, qtbase, mkDerivationWith }:
 
 {
   stable = throw "plover.stable was removed because it used Python 2. Use plover.dev instead."; # added 2022-06-05
diff --git a/pkgs/applications/misc/prusa-slicer/default.nix b/pkgs/applications/misc/prusa-slicer/default.nix
index 1592ef5461559..75c1ed16e1d17 100644
--- a/pkgs/applications/misc/prusa-slicer/default.nix
+++ b/pkgs/applications/misc/prusa-slicer/default.nix
@@ -28,13 +28,13 @@
 , qhull
 , systemd
 , tbb
-, wxGTK31-gtk3
+, wxGTK31
 , xorg
 , fetchpatch
-, wxGTK31-gtk3-override ? null
+, wxGTK31-override ? null
 }:
 let
-  wxGTK31-gtk3-prusa = wxGTK31-gtk3.overrideAttrs (old: rec {
+  wxGTK31-prusa = wxGTK31.overrideAttrs (old: rec {
     pname = "wxwidgets-prusa3d-patched";
     version = "3.1.4";
     src = fetchFromGitHub {
@@ -45,7 +45,7 @@ let
       fetchSubmodules = true;
     };
   });
-  wxGTK31-gtk3-override' = if wxGTK31-gtk3-override == null then wxGTK31-gtk3-prusa else wxGTK31-gtk3-override;
+  wxGTK31-override' = if wxGTK31-override == null then wxGTK31-prusa else wxGTK31-override;
 in
 stdenv.mkDerivation rec {
   pname = "prusa-slicer";
@@ -80,7 +80,7 @@ stdenv.mkDerivation rec {
     pcre
     systemd
     tbb
-    wxGTK31-gtk3-override'
+    wxGTK31-override'
     xorg.libX11
   ] ++ checkInputs;
 
diff --git a/pkgs/applications/misc/prusa-slicer/super-slicer.nix b/pkgs/applications/misc/prusa-slicer/super-slicer.nix
index b385542d679a5..a3c8fc6cdcc62 100644
--- a/pkgs/applications/misc/prusa-slicer/super-slicer.nix
+++ b/pkgs/applications/misc/prusa-slicer/super-slicer.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitHub, fetchpatch, makeDesktopItem, prusa-slicer, wxGTK31-gtk3 }:
+{ lib, fetchFromGitHub, fetchpatch, makeDesktopItem, prusa-slicer, wxGTK31 }:
 let
   appname = "SuperSlicer";
   pname = "super-slicer";
@@ -71,7 +71,7 @@ let
     passthru = allVersions;
 
   };
-  prusa-slicer' = prusa-slicer.override { wxGTK31-gtk3-override = wxGTK31-gtk3; };
+  prusa-slicer' = prusa-slicer.override { wxGTK31-override = wxGTK31; };
   allVersions = builtins.mapAttrs (_name: version: (prusa-slicer'.overrideAttrs (override version))) versions;
 in
 allVersions.stable
diff --git a/pkgs/applications/misc/slade/default.nix b/pkgs/applications/misc/slade/default.nix
index e9ba7b2a8f31e..3682325cafff6 100644
--- a/pkgs/applications/misc/slade/default.nix
+++ b/pkgs/applications/misc/slade/default.nix
@@ -1,24 +1,68 @@
-{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, wxGTK, gtk2, sfml, fluidsynth, curl, freeimage, ftgl, glew, zip }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, pkg-config
+, which
+, zip
+, wxGTK
+, gtk3
+, sfml
+, fluidsynth
+, curl
+, freeimage
+, ftgl
+, glew
+, lua
+, mpg123
+}:
 
 stdenv.mkDerivation rec {
   pname = "slade";
-  version = "3.1.1.5";
+  version = "3.2.1";
 
   src = fetchFromGitHub {
     owner = "sirjuddington";
     repo = "SLADE";
     rev = version;
-    sha256 = "0mdn59jm6ab4cdh99bgvadif3wdlqmk5mq635gg7krq35njgw6f6";
+    sha256 = "sha256-KFRX3sfI//Op/h/EfEuAZOY22RO5qNXmvhSksC0aS4U=";
   };
 
-  nativeBuildInputs = [ cmake pkg-config zip ];
-  buildInputs = [ wxGTK gtk2 sfml fluidsynth curl freeimage ftgl glew ];
+  postPatch = lib.optionalString (!stdenv.hostPlatform.isx86) ''
+    sed -i '/-msse/d' src/CMakeLists.txt
+  '';
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    which
+    zip
+  ];
+
+  buildInputs = [
+    wxGTK
+    gtk3
+    sfml
+    fluidsynth
+    curl
+    freeimage
+    ftgl
+    glew
+    lua
+    mpg123
+  ];
+
+  cmakeFlags = [
+    "-DwxWidgets_LIBRARIES=${wxGTK}/lib"
+  ];
+
+  NIX_CFLAGS_COMPILE = "-Wno-narrowing";
 
   meta = with lib; {
     description = "Doom editor";
     homepage = "http://slade.mancubus.net/";
-    license = licenses.gpl2;
-    platforms = [ "x86_64-linux" "i686-linux" ];
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
     maintainers = with maintainers; [ abbradar ];
   };
 }
diff --git a/pkgs/applications/misc/slade/git.nix b/pkgs/applications/misc/slade/git.nix
index 124ae206c8ce6..d336d460d7c57 100644
--- a/pkgs/applications/misc/slade/git.nix
+++ b/pkgs/applications/misc/slade/git.nix
@@ -3,43 +3,66 @@
 , fetchFromGitHub
 , cmake
 , pkg-config
+, which
+, zip
 , wxGTK
+, gtk3
 , sfml
 , fluidsynth
 , curl
 , freeimage
 , ftgl
 , glew
-, zip
 , lua
-, fmt
 , mpg123
 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "slade";
-  version = "unstable-2021-05-13";
+  version = "unstable-2022-08-15";
 
   src = fetchFromGitHub {
     owner = "sirjuddington";
     repo = "SLADE";
-    rev = "d2e249c89062a44c912a9b86951526edc8735ba0";
-    sha256 = "08dsvx7m7c97jm8fxzivmi1fr47hj53y0lv57clqc35bh2gi62dg";
+    rev = "1a0d25eec54f9ca2eb3667676d93fb0b6b6aea26";
+    sha256 = "sha256-mtaJr4HJbp2UnzwaLq12V69DqPYDmSNqMGiuPpMlznI=";
   };
 
+  postPatch = lib.optionalString (!stdenv.hostPlatform.isx86) ''
+    sed -i '/-msse/d' src/CMakeLists.txt
+  '';
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    which
+    zip
+  ];
+
+  buildInputs = [
+    wxGTK
+    gtk3
+    sfml
+    fluidsynth
+    curl
+    freeimage
+    ftgl
+    glew
+    lua
+    mpg123
+  ];
+
   cmakeFlags = [
-    "-DwxWidgets_CONFIG_EXECUTABLE=${wxGTK}/bin/wx-config"
-    "-DWX_GTK3=OFF"
-    "-DNO_WEBVIEW=1"
+    "-DwxWidgets_LIBRARIES=${wxGTK}/lib"
   ];
-  nativeBuildInputs = [ cmake pkg-config zip ];
-  buildInputs = [ wxGTK wxGTK.gtk sfml fluidsynth curl freeimage ftgl glew lua fmt mpg123 ];
+
+  NIX_CFLAGS_COMPILE = "-Wno-narrowing";
 
   meta = with lib; {
     description = "Doom editor";
     homepage = "http://slade.mancubus.net/";
     license = licenses.gpl2Plus;
-    platforms = [ "x86_64-linux" "i686-linux" ];
+    platforms = platforms.linux;
     maintainers = with maintainers; [ ertes ];
   };
 }
diff --git a/pkgs/applications/misc/spicetify-cli/default.nix b/pkgs/applications/misc/spicetify-cli/default.nix
index 4c8fab8582ed8..587b61d3af939 100644
--- a/pkgs/applications/misc/spicetify-cli/default.nix
+++ b/pkgs/applications/misc/spicetify-cli/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "spicetify-cli";
-  version = "2.14.0";
+  version = "2.14.1";
 
   src = fetchFromGitHub {
     owner = "spicetify";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-iaaf5ZHaHSEkQdxqZtsc6K/3+x6gAfvgQoWWYWcFeV4=";
+    sha256 = "sha256-262tnSKX6M9ggm4JIs0pANeq2JSNYzKkTN8awpqLyMM=";
   };
 
-  vendorSha256 = "sha256-zYIbtcDM9iYSRHagvI9D284Y7w0ZxG4Ba1p4jqmQyng=";
+  vendorSha256 = "sha256-E2Q+mXojMb8E0zSnaCOl9xp5QLeYcuTXjhcp3Hc8gH4=";
 
   ldflags = [
     "-s -w"
diff --git a/pkgs/applications/misc/sticky/default.nix b/pkgs/applications/misc/sticky/default.nix
index 75dac02f56ecf..cab49db654e28 100644
--- a/pkgs/applications/misc/sticky/default.nix
+++ b/pkgs/applications/misc/sticky/default.nix
@@ -85,6 +85,6 @@ python3.pkgs.buildPythonApplication rec {
     homepage = "https://github.com/linuxmint/sticky";
     license = licenses.gpl2Only;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ linsui ];
+    maintainers = with maintainers; [ linsui bobby285271 ];
   };
 }
diff --git a/pkgs/applications/misc/synergy/default.nix b/pkgs/applications/misc/synergy/default.nix
index f756e9788ac95..d401b2c421954 100644
--- a/pkgs/applications/misc/synergy/default.nix
+++ b/pkgs/applications/misc/synergy/default.nix
@@ -26,6 +26,7 @@
 , avahi-compat
 
   # MacOS / darwin
+, darwin
 , ApplicationServices
 , Carbon
 , Cocoa
@@ -48,6 +49,7 @@ stdenv.mkDerivation rec {
   patches = [
     # Without this OpenSSL from nixpkgs is not detected
     ./darwin-non-static-openssl.patch
+  ] ++ lib.optionals (stdenv.isDarwin && !(darwin.apple_sdk.frameworks ? UserNotifications)) [
     # We cannot include UserNotifications because of a build failure in the Apple SDK.
     # The functions used from it are already implicitly included anyways.
     ./darwin-no-UserNotifications-includes.patch
@@ -76,6 +78,8 @@ stdenv.mkDerivation rec {
     Cocoa
     CoreServices
     ScreenSaver
+  ] ++ lib.optionals (stdenv.isDarwin && darwin.apple_sdk.frameworks ? UserNotifications) [
+    darwin.apple_sdk.frameworks.UserNotifications
   ] ++ lib.optionals stdenv.isLinux [
     util-linux
     libselinux
@@ -97,7 +101,8 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-Wno-inconsistent-missing-override";
 
   cmakeFlags = lib.optional (!withGUI) "-DSYNERGY_BUILD_LEGACY_GUI=OFF"
-    ++ lib.optional stdenv.isDarwin "-DCMAKE_OSX_DEPLOYMENT_TARGET=${stdenv.targetPlatform.darwinSdkVersion}";
+    # NSFilenamesPboardType is deprecated in 10.14+
+    ++ lib.optional stdenv.isDarwin "-DCMAKE_OSX_DEPLOYMENT_TARGET=${if stdenv.isAarch64 then "10.13" else stdenv.targetPlatform.darwinSdkVersion}";
 
   doCheck = true;
 
diff --git a/pkgs/applications/misc/vhs/default.nix b/pkgs/applications/misc/vhs/default.nix
new file mode 100644
index 0000000000000..5ea0a82c850eb
--- /dev/null
+++ b/pkgs/applications/misc/vhs/default.nix
@@ -0,0 +1,38 @@
+{ lib, buildGoModule, installShellFiles, fetchFromGitHub, ffmpeg, ttyd, makeWrapper }:
+
+buildGoModule rec {
+  pname = "vhs";
+  version = "0.1.1";
+
+  src = fetchFromGitHub {
+    owner = "charmbracelet";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-wcOLUA/U+xRwo7slnACCURQO7D0F3pFP2/SHDfEHeTA=";
+  };
+
+  vendorHash = "sha256-f8EHDxu+NWAFJx9ujzsiDhNymdEzExmdreP11gV56AI=";
+
+  nativeBuildInputs = [ installShellFiles makeWrapper ];
+  buildInputs = [ ttyd ffmpeg ];
+
+  ldflags = [ "-s" "-w" "-X=main.Version=${version}" ];
+
+  postInstall = ''
+    wrapProgram $out/bin/vhs --prefix PATH : ${lib.makeBinPath [ ffmpeg ttyd ]}
+    $out/bin/vhs man > vhs.1
+    installManPage vhs.1
+    installShellCompletion --cmd vhs \
+      --bash <($out/bin/vhs completion bash) \
+      --fish <($out/bin/vhs completion fish) \
+      --zsh <($out/bin/vhs completion zsh)
+  '';
+
+  meta = with lib; {
+    description = "A tool for generating terminal GIFs with code";
+    homepage = "https://github.com/charmbracelet/vhs";
+    changelog = "https://github.com/charmbracelet/vhs/releases/tag/v${version}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ maaslalani ];
+  };
+}
diff --git a/pkgs/applications/misc/waybar/default.nix b/pkgs/applications/misc/waybar/default.nix
index 80a2047b61f84..be770a3021e8b 100644
--- a/pkgs/applications/misc/waybar/default.nix
+++ b/pkgs/applications/misc/waybar/default.nix
@@ -34,13 +34,13 @@
 
 stdenv.mkDerivation rec {
   pname = "waybar";
-  version = "0.9.14";
+  version = "0.9.15";
 
   src = fetchFromGitHub {
     owner = "Alexays";
     repo = "Waybar";
     rev = version;
-    sha256 = "sha256-1tnFBUB7/MjnrCkfKOR2SZ/GB5Ik115zsnwjkNMB05E=";
+    sha256 = "sha256-u2nEMS0lJ/Kf09+mWYWQLji9MVgjYAfUi5bmPEfTfFc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/wofi/default.nix b/pkgs/applications/misc/wofi/default.nix
index 2473129bc6dc2..0b76fb278d98b 100644
--- a/pkgs/applications/misc/wofi/default.nix
+++ b/pkgs/applications/misc/wofi/default.nix
@@ -1,13 +1,24 @@
-{ stdenv, lib, fetchhg, pkg-config, meson, ninja, wayland, gtk3, wrapGAppsHook, installShellFiles }:
-
+{ stdenv
+, lib
+, fetchFromSourcehut
+, pkg-config
+, meson
+, ninja
+, wayland
+, gtk3
+, wrapGAppsHook
+, installShellFiles
+}:
 stdenv.mkDerivation rec {
   pname = "wofi";
   version = "1.3";
 
-  src = fetchhg {
-    url = "https://hg.sr.ht/~scoopta/wofi";
+  src = fetchFromSourcehut {
+    repo = pname;
+    owner = "~scoopta";
     rev = "v${version}";
     sha256 = "sha256-GxMjEXBPQniD+Yc9QZjd8TH4ILJAX5dNzrjxDawhy8w=";
+    vc = "hg";
   };
 
   nativeBuildInputs = [ pkg-config meson ninja wrapGAppsHook installShellFiles ];
diff --git a/pkgs/applications/misc/wordnet/default.nix b/pkgs/applications/misc/wordnet/default.nix
index 5b52caeaf1ad5..d49f55574a86f 100644
--- a/pkgs/applications/misc/wordnet/default.nix
+++ b/pkgs/applications/misc/wordnet/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, tcl, tk, Cocoa, xlibsWrapper, makeWrapper }:
+{ lib, stdenv, fetchurl, tcl, tk, Cocoa, makeWrapper }:
 
 stdenv.mkDerivation rec {
   version = "3.0";
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ tcl tk xlibsWrapper ]
+  buildInputs = [ tcl tk ]
     ++ lib.optionals stdenv.isDarwin [ Cocoa ];
 
   hardeningDisable = [ "format" ];
diff --git a/pkgs/applications/misc/workrave/default.nix b/pkgs/applications/misc/workrave/default.nix
index d092a910912a3..a7a8e1321ca40 100644
--- a/pkgs/applications/misc/workrave/default.nix
+++ b/pkgs/applications/misc/workrave/default.nix
@@ -1,29 +1,84 @@
-{ lib, stdenv, fetchFromGitHub, wrapGAppsHook
-, autoconf, autoconf-archive, automake, gettext, intltool, libtool, pkg-config
-, libICE, libSM, libXScrnSaver, libXtst, cheetah
-, gobject-introspection, glib, glibmm, gtkmm3, atk, pango, pangomm, cairo
-, cairomm , dbus, dbus-glib, gdome2, gstreamer, gst-plugins-base
-, gst-plugins-good, libsigcxx }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, wrapGAppsHook
+, autoconf
+, autoconf-archive
+, automake
+, gettext
+, intltool
+, libtool
+, pkg-config
+, libICE
+, libSM
+, libXScrnSaver
+, libXtst
+, gobject-introspection
+, glib
+, glibmm
+, gtkmm3
+, atk
+, pango
+, pangomm
+, cairo
+, cairomm
+, dbus
+, dbus-glib
+, gdome2
+, gstreamer
+, gst-plugins-base
+, gst-plugins-good
+, libsigcxx
+, boost
+, jinja2
+}:
 
 stdenv.mkDerivation rec {
   pname = "workrave";
-  version = "1.10.31";
+  version = "1.10.50";
 
   src = fetchFromGitHub {
-    sha256 = "0v2mx2idaxlsyv5w66b7pknlill9j9i2gqcs3vq54gak7ix9fj1p";
-    rev = with lib;
-      "v" + concatStringsSep "_" (splitVersion version);
     repo = "workrave";
     owner = "rcaelers";
+    rev = with lib;
+      "v" + concatStringsSep "_" (splitVersion version);
+    sha256 = "sha256-fSUfgk0PmiteVQis+0NmMMZXBe/377X2k9oS2yp2Qzo=";
   };
 
   nativeBuildInputs = [
-    autoconf autoconf-archive automake gettext intltool libtool pkg-config wrapGAppsHook
+    autoconf
+    autoconf-archive
+    automake
+    gettext
+    intltool
+    libtool
+    pkg-config
+    wrapGAppsHook
+    jinja2
   ];
+
   buildInputs = [
-    libICE libSM libXScrnSaver libXtst cheetah
-    gobject-introspection glib glibmm gtkmm3 atk pango pangomm cairo cairomm
-    dbus dbus-glib gdome2 gstreamer gst-plugins-base gst-plugins-good libsigcxx
+    libICE
+    libSM
+    libXScrnSaver
+    libXtst
+    gobject-introspection
+    glib
+    glibmm
+    gtkmm3
+    atk
+    pango
+    pangomm
+    cairo
+    cairomm
+    dbus
+    dbus-glib
+    gdome2
+    gstreamer
+    gst-plugins-base
+    gst-plugins-good
+    libsigcxx
+    boost
   ];
 
   preConfigure = "./autogen.sh";
diff --git a/pkgs/applications/misc/xca/default.nix b/pkgs/applications/misc/xca/default.nix
index 7b94af3b52a11..f5c8e90d2703c 100644
--- a/pkgs/applications/misc/xca/default.nix
+++ b/pkgs/applications/misc/xca/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, mkDerivation, lib, fetchFromGitHub, autoreconfHook, pkg-config
+{ stdenv, mkDerivation, lib, fetchFromGitHub, fetchpatch, autoreconfHook, pkg-config
 , libtool, openssl, qtbase, qttools, sphinx }:
 
 mkDerivation rec {
@@ -12,6 +12,12 @@ mkDerivation rec {
     sha256 = "04z0mmjsry72nvib4icmwh1717y4q9pf2gr68ljrzln4vv4ckpwk";
   };
 
+  # Adaptions to stay OpenSSL 3.0 compatible
+  patches = [ (fetchpatch {
+    url = "https://github.com/chris2511/xca/commit/f5ac099e948ea354deac75ff9fa09d51453476e1.patch";
+    hash = "sha256-4rRO2y9hZq879HTsgBgbXGRYEcgfG4niJKyK3l3PMZ8=";
+  }) ];
+
   buildInputs = [ libtool openssl qtbase ];
 
   nativeBuildInputs = [ autoreconfHook pkg-config qttools sphinx ];
diff --git a/pkgs/applications/misc/xplr/default.nix b/pkgs/applications/misc/xplr/default.nix
index 392944aa2a990..772d479ff78a7 100644
--- a/pkgs/applications/misc/xplr/default.nix
+++ b/pkgs/applications/misc/xplr/default.nix
@@ -2,18 +2,18 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "xplr";
-  version = "0.19.4";
+  version = "0.20.0";
 
   src = fetchFromGitHub {
     owner = "sayanarijit";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-oVMnhtsovZAqMdmtV8oJ8frgHGidjlFzVyrYxi+gNdg=";
+    sha256 = "sha256-TH5ksbEVBlOPmqQOtRmoHTDBRkj/KaMsM+Xc7e2ObzY=";
   };
 
   buildInputs = lib.optional stdenv.isDarwin libiconv;
 
-  cargoSha256 = "sha256-PDbhnVThdb/42Q/dp/MNU6i6Un/lkKzfKuGukFt5tmc=";
+  cargoSha256 = "sha256-RcH1J5I9FPQ/Npq4I5lcOsZHzvKyYhxmqOIEYcBXqU0=";
 
   meta = with lib; {
     description = "A hackable, minimal, fast TUI file explorer";
diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.json b/pkgs/applications/networking/browsers/chromium/upstream-info.json
index dd10f0c7c7c72..060c9f53361be 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": "107.0.5304.68",
-    "sha256": "0k5qrmby1k2gw3lj96x3qag20kka61my578pv0zyrqqj5sdz3i5a",
-    "sha256bin64": "1x9svz5s8fm2zhnpzjpqckzfp37hjni3nf3pm63rwnvbd06y48ja",
+    "version": "107.0.5304.87",
+    "sha256": "0n9wr5v7zcdmbqs7mmnyydjvzw0glh5l3skpj7i1nap2hv0h03kc",
+    "sha256bin64": "16a6qisxkfmx60qh67rvfy3knp66hdgxan48cga6j3zd683inas2",
     "deps": {
       "gn": {
         "version": "2022-09-14",
@@ -19,35 +19,35 @@
     }
   },
   "beta": {
-    "version": "107.0.5304.68",
-    "sha256": "0k5qrmby1k2gw3lj96x3qag20kka61my578pv0zyrqqj5sdz3i5a",
-    "sha256bin64": "15ijvsm9k28iwr7dxi2vbrlb7z5nz63yvpx7cg766z1z1q5jcg7m",
+    "version": "108.0.5359.22",
+    "sha256": "1wwrwqyl9nl4kpkmkybw14ygj5lfrk274yx5f817ha1kpk8vma0y",
+    "sha256bin64": "0dq3mf1rai7i3aqq9h8g4iy9nxy3hbb6gd86c31admxygdpgpds5",
     "deps": {
       "gn": {
-        "version": "2022-09-14",
+        "version": "2022-10-05",
         "url": "https://gn.googlesource.com/gn",
-        "rev": "fff29c1b3f9703ea449f720fe70fa73575ef24e5",
-        "sha256": "1c0dvpp4im1hf277bs5w7rgqxz3g2bax266i2g6smi3pl7a8jpnp"
+        "rev": "b9c6c19be95a3863e02f00f1fe403b2502e345b6",
+        "sha256": "1rhadb6qk867jafr85x2m3asis3jv7x06blhmad2d296p26d5w6x"
       }
     }
   },
   "dev": {
-    "version": "108.0.5359.19",
-    "sha256": "1093anaymbmza6rf9hisl6qdf9jfaa27kyd3gbv5xyc0i450ypg5",
-    "sha256bin64": "0yi6qi7asmh3kx6y86p22smjf5bpay1nrj09zg7l2qd3gi836xp0",
+    "version": "109.0.5384.0",
+    "sha256": "195lbklp5c6bvfzhdvah4k2yr44jwy64499y37kgxky0mb79a26n",
+    "sha256bin64": "02qbwj9gfcgxdqm1mhxg0mljvrhnl994lhis615y23099r3r67i8",
     "deps": {
       "gn": {
-        "version": "2022-10-05",
+        "version": "2022-10-26",
         "url": "https://gn.googlesource.com/gn",
-        "rev": "b9c6c19be95a3863e02f00f1fe403b2502e345b6",
-        "sha256": "1rhadb6qk867jafr85x2m3asis3jv7x06blhmad2d296p26d5w6x"
+        "rev": "3e98c606ed0dff59fa461fbba4892c0b6de1966e",
+        "sha256": "08cz58svkb7c71f1x1ahr60a6ircr31rfmkk4d46z2v39sgry1gv"
       }
     }
   },
   "ungoogled-chromium": {
-    "version": "107.0.5304.68",
-    "sha256": "0k5qrmby1k2gw3lj96x3qag20kka61my578pv0zyrqqj5sdz3i5a",
-    "sha256bin64": "1x9svz5s8fm2zhnpzjpqckzfp37hjni3nf3pm63rwnvbd06y48ja",
+    "version": "107.0.5304.88",
+    "sha256": "1k4j4j9b1m7kjybfgns9akb7adfby3gnjpibk0kjd22n3sprar8y",
+    "sha256bin64": null,
     "deps": {
       "gn": {
         "version": "2022-09-14",
@@ -56,8 +56,8 @@
         "sha256": "1c0dvpp4im1hf277bs5w7rgqxz3g2bax266i2g6smi3pl7a8jpnp"
       },
       "ungoogled-patches": {
-        "rev": "107.0.5304.68-1",
-        "sha256": "0rjdi2lr71xjjf4x27183ys87fc95m85yp5x3kk6i39ppksvsj6b"
+        "rev": "107.0.5304.88-1",
+        "sha256": "1m9hjbs79ga5jw7x332jl882lh7yrr4n4r4qrzy37ai75x371pz2"
       }
     }
   }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
index 9a286b92a7e7d..da43a04f5a541 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
@@ -1,985 +1,985 @@
 {
-  version = "106.0.2";
+  version = "106.0.3";
   sources = [
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/ach/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/ach/firefox-106.0.3.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha256 = "a95a15867548160d795cd1ecb56ae90b7aa9c7db6f15d5cae8cdb522c471cdd4";
+      sha256 = "31fb0e887239284858725cdc9ca12336964425e204812fe7fb152eedd4b2a900";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/af/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/af/firefox-106.0.3.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha256 = "00d2e72c8317c8cd88520836589aebaaa97eb161e77ebf874d0b8c4395c8a5c0";
+      sha256 = "49857fbdeaa48ba225e1b4804b4958f4df1701f677b38da75f308169f5ba0398";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/an/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/an/firefox-106.0.3.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha256 = "628f5521bcaf38cdbaf748f523daf1a881fcb37da1cab7d7045841190ed70844";
+      sha256 = "420f848d1510256f431a412a59ea8c321f0b6ca3414a947a9932037b01c66881";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/ar/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/ar/firefox-106.0.3.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha256 = "15ae1a91abc73bddaa0cd6050a9fd4ed5bed116efc269bf086d40fc6b7d9e66d";
+      sha256 = "b108d4c7989e55863d54fe43bbdf1ab95ac6f2ee63265be3ec8a2c6d1e89370d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/ast/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/ast/firefox-106.0.3.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha256 = "b9d5c9e81c4ed5e13ac4c03e8cd8a7678879b96ec5b7ed3be246a6b3d9885136";
+      sha256 = "5887bef188ce5bc9261e9ba5b335800c5918a1ab9a5ff64f549a4d2d1fef6bbc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/az/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/az/firefox-106.0.3.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha256 = "a55f10740870877967a526164ffe8ccb5bb4fdce3d94844656e169f2e5e7471c";
+      sha256 = "faa0fc42cdc7fd594dcbf8873913144f881be036e553b9b913ec5b825f2358ad";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/be/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/be/firefox-106.0.3.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha256 = "dc0d2d3e5cfd38a6792ae32b83eae236f2d69ca38b7909014cfdbe437a7baa2e";
+      sha256 = "01ef94bd46b2cf6933517b048452a665b260291f7eeb6c71ede047e19942668b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/bg/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/bg/firefox-106.0.3.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha256 = "0719c8d93c132ad4c0e1ca3fd766eb9eb4ae4a717c007d6a67e61f3f24baaefd";
+      sha256 = "c800c227b1c6e55f6d2d080d03f72d4469a1452be5c388e472ceb0b99107f20b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/bn/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/bn/firefox-106.0.3.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha256 = "e15d4412acefee301cae865e5832cc874c1ff5bb848a14e5ae7a7d9e1b08a11f";
+      sha256 = "aef3853b5fcaeb794cb2014ee7ce2c4d31692cf2a8ecdab5fc276645c20d4c61";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/br/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/br/firefox-106.0.3.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha256 = "b420bcc5cb164ff7711cc140cc848a1651816037120ac8e0769ccf2c7d33002f";
+      sha256 = "11be73589548959ce15e1ab8c2d5c90a918cc8541bb51707b5b12bc29404aa59";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/bs/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/bs/firefox-106.0.3.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha256 = "6f83923e2538169e91d75534bb2ccd18e7d9d5a2928ea0c156572644e50c3d02";
+      sha256 = "9d38beb6e0b5070c6370994bd7f714e4b435f82bb802f708d0b32f1665ba674d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/ca-valencia/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/ca-valencia/firefox-106.0.3.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha256 = "6bbb1c08426d7cd8965e641cb682ab3c5fcb91f2a67c017ccdb7145084b83150";
+      sha256 = "e25facfe1cf74cf83a5afb47e912d59c80b66d276cbac794a43c7871c9a2706d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/ca/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/ca/firefox-106.0.3.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha256 = "9281bda763a73ecd6152d2a3d35508dbcd0f1eeb9f346add142266105629a2e5";
+      sha256 = "2bc2c0031ca385bbd3935d53824887e047478509fef3941511fb61c35c981616";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/cak/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/cak/firefox-106.0.3.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha256 = "69065cf7bbe58b24f06202ecdf10b005f2da751528b447492e50b6b8cdd19f64";
+      sha256 = "774147fb330ad37ab5455954fcad9daad265d8ae996c5efec85120926ee20b65";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/cs/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/cs/firefox-106.0.3.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha256 = "657bf102caa80c87d77610ef41933f4690c9c20f937678b38b3db6203b2d1a71";
+      sha256 = "ecce0b2298fd44a63026ee1d057d02972e168e7c0ee792ba404ecb8f573fe618";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/cy/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/cy/firefox-106.0.3.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha256 = "e2080798d42f3067d0f0880cb391b5cbabe0ec8bef54fae40d02c4833dd3a876";
+      sha256 = "0e70e7413d7e72ef44fc905ff4689e47bec3224533c17c8e8751a814801e8ac6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/da/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/da/firefox-106.0.3.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha256 = "09918393e885c564f495ed22a6f417c5224fb781892d084d2509651769cab99d";
+      sha256 = "27997c29c7db7bf928559beaa42d2478e8c18c05494307c6dbd1ea66f1307fdc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/de/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/de/firefox-106.0.3.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha256 = "a33be323b31c8d9f882a920537f2ab2621e11c3d029a8d121d717527611c73f9";
+      sha256 = "58477c226f5e30bcfdebd5b7a7cfed154eb277dc227e0d57f0fc5b34d4785869";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/dsb/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/dsb/firefox-106.0.3.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha256 = "32fad47a2d1dd6b63ad8f02b33aca3aa1d807b6944b0f602ff3d807f9f49655d";
+      sha256 = "4cdbef5b1daa86c8ded63fd71f847d81b1a81067ad721ee31f7763d0152214af";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/el/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/el/firefox-106.0.3.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha256 = "9e01a4bbbd9181840f1a06ba740b76495e350dac97bc96b3ec1e7cfef406c05e";
+      sha256 = "20422b61965b700acf7beea92d09e7f5bdc71cb2228451a5559b06433c949a7a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/en-CA/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/en-CA/firefox-106.0.3.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha256 = "74408046e004ed3929a025ad633247284a7e0882be7944b45869356e6f015610";
+      sha256 = "f95f69a3c742a8693d3331f582bdf1086c8142de0fd790148a7db3ef597f8769";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/en-GB/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/en-GB/firefox-106.0.3.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha256 = "38e421e36a84fc50942000a5af4158c925d2a3675dc8a5114e736d33db527e72";
+      sha256 = "f511ef6add6fb5ebeb711d2b7fc1f0f8b79545c3f22a17b91ff3988d7c43f72a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/en-US/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/en-US/firefox-106.0.3.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha256 = "4867a211001cc289fbe8ee5eaa04f72691d9a61e44f7c5ddb339ba8a37501bac";
+      sha256 = "0c18141ededd6c969f00275eaf26d05933f71bf14143d70d4f5fa74df9411155";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/eo/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/eo/firefox-106.0.3.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha256 = "9c18807ab6bc451596ddf83640ac916cae7f1fc6dfb70f4893cc51552cdcf5bd";
+      sha256 = "d177833b695e5ecc92abef14b2957df0087d04763dad69b0598bbb5278885702";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/es-AR/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/es-AR/firefox-106.0.3.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha256 = "7e25cf4a75e1ddfe8e9b793d675bd74790234f58092c42f8901093c1e963b4c8";
+      sha256 = "8f66db37834870232eb60573e29fbae645f3bc88557678565bae835f1f91cc8c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/es-CL/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/es-CL/firefox-106.0.3.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha256 = "8952eefcfea95e60954a4c97c2d8cfc3e542548c91221924ce5b4f68c54bbded";
+      sha256 = "8e565b5630ecddd2d026b09f3f1fc983ee651d1b6af35d6f3c66277380048413";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/es-ES/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/es-ES/firefox-106.0.3.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha256 = "66e59163dd0ea4f156d71e3742b9adc1f22f5de1d1046e8b761988784a4df756";
+      sha256 = "278a50d11dbca9937859334bd4456189c90030a75c697965dfdc17191c96bff3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/es-MX/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/es-MX/firefox-106.0.3.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha256 = "be08a87f8eda8845618524112a53cb427272e8365dbd637267d500b23258deca";
+      sha256 = "69bb1b0852b6c10374ab8a332372decfb9b6c8adade223ea934463d17c2dd2ee";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/et/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/et/firefox-106.0.3.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha256 = "0d0660e2a7e5c4c17afad2a68f2f0d262f1fc8366d877b441eb0fd18450e57db";
+      sha256 = "25859d8df8d4f557e32ef3d4e520428e0d4804824fb95f60644720142acf9de9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/eu/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/eu/firefox-106.0.3.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha256 = "ca37cf5bc2efdb5636ea6ad654a64d73a285c46544d887ff8abc38fb6778ee09";
+      sha256 = "3e84112cc7981c763bed273cff26285fc3a7cf0e2b11325165a23958523c24e9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/fa/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/fa/firefox-106.0.3.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha256 = "445dd3b89c33b15e935b32a84e711859c55238b384b3ecb443f9093a4201906f";
+      sha256 = "2096bd82fff97da6ac23d88ed92832503084b30444ed38ee0e61f7245d8a8aa6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/ff/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/ff/firefox-106.0.3.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha256 = "6d101c69335026ae36ce9193dbd27487c0e6f47a3199d276263a523d71d302eb";
+      sha256 = "f9e58ab7cb3b06482d7e0d0814a41ca8f0319b6130c16080043c2d30fb3786a7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/fi/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/fi/firefox-106.0.3.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha256 = "267ea3695844ff090b5ff0a53d16bd5bbd6c7726485096be643fb5ba20e51e7a";
+      sha256 = "e365f19a9e58c447f5093ff77208fd972d1bf2afddcc92e9a0cc94ce7c7986a1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/fr/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/fr/firefox-106.0.3.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha256 = "74ad72a8c00681707efbe993476a26571ed90e7ad4485d91b9f39d8b89ecfc18";
+      sha256 = "0a313be3de9bc834993ea5085290c975485138718131aa83ca52818d22ba97eb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/fy-NL/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/fy-NL/firefox-106.0.3.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha256 = "f4623d18d7a63afb0643ccb7d7c3e1d93704bec786cf192561c463b9c6ebd33f";
+      sha256 = "991550fdcbaa1be5f8fc3a66989159a67a25fbc8436a488126d99abc76b9ee63";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/ga-IE/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/ga-IE/firefox-106.0.3.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha256 = "49d0044e38634a531334b356975bf4f023ab0161bb926c6ac7a608adc0f863f6";
+      sha256 = "bbd2826156fec3e556fb2a0af5e4a6b056a04d6808a0c8d442648264a3f876b7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/gd/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/gd/firefox-106.0.3.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha256 = "686f456dd0655f6047ae0e44be3acee9655f2cc51964fc9aebdaaf9a30c12e26";
+      sha256 = "d5517a7292652c26073004055bac3cc3c269e346dce6537698b4945c5c9db00c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/gl/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/gl/firefox-106.0.3.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha256 = "b4d5ece230195e2f9b21640a924b74d93cd6da609ab7364ac3be82f49fbcd3f1";
+      sha256 = "8b527884efc8233e42040f3ddba1078149bc54bee41674b37912bc7ba3f04aa2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/gn/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/gn/firefox-106.0.3.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha256 = "a8e1079a2dc93d6c653f9ad423d554edfb8a85d8edccb00d0819d38d55096239";
+      sha256 = "615040d2e5b1a9f8a5bf13f7f3485fc63e378d23b0d3ea6ec84ab2aeb926a3f6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/gu-IN/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/gu-IN/firefox-106.0.3.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha256 = "4397fb92b09bd037af12d36cba3dff684673d62b9e9c36ae9774ccb6901acfc4";
+      sha256 = "8c11d61d431bff7e4725a123ce5dc72067ff57d3b23adb37f2377ebad4168117";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/he/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/he/firefox-106.0.3.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha256 = "bb7d3e2ee215d73b0cfeb65aee4b4acbcc9524806fe5ec5ae5e7449456c841bc";
+      sha256 = "101053ad36adbceecc45a001c8bcfb274d1f7381e7aac9994142f99f110983df";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/hi-IN/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/hi-IN/firefox-106.0.3.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha256 = "03eebd1be19a3f2a6f4b869e2f6edc245c6be9001d99c645c280c09a35b7ed7e";
+      sha256 = "3a1b7b8aa61baa363edeb4e78b98ea2dc67ec13ca9dc14c1a6934fc5fc5673fa";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/hr/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/hr/firefox-106.0.3.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha256 = "6e17c3970a6af1ee74a04ff87886a309176a1f830d3bac1af7df097abcb1bc27";
+      sha256 = "7fb991b57ecd01def50948d35b5b8a93dfa00f28f6522b59639877465a2d7c34";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/hsb/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/hsb/firefox-106.0.3.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha256 = "b8a8c4444cf5761daf104bad3e7e75e9bfd5fa5ceb3558176a4bb071b62e996f";
+      sha256 = "b82c58c200f42f9f7fafe555391e714d9cc3dc2ee9a633dbe19e1cebd1012320";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/hu/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/hu/firefox-106.0.3.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha256 = "12ea9f3811a0b37114cd86821261e95438011438dd10a109fe8aaf625db45e7c";
+      sha256 = "22905b2ef794896557be6112965a593e0b64ca5bad9b65fd6ebf8586b5ced0bc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/hy-AM/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/hy-AM/firefox-106.0.3.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha256 = "971ec09c1904c6670266b82e2079f14e6643e628688b1b901f2b0a162b891edf";
+      sha256 = "38e33a1273d6f4d4e5b0799b67150e5289427b13674ff981af6946e5ed0d0e68";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/ia/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/ia/firefox-106.0.3.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha256 = "4f41904dce35a44ca6387bdf254bb115e3f2334bbed68c3a2ccc965b6b9c7410";
+      sha256 = "dbcb7470bd85c8b77114f759d4c327981ec27cd16cca668f41061f3f70d3d211";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/id/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/id/firefox-106.0.3.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha256 = "2ce89ec7c303034099253792717099bb7452e9bca62dc6930102bbecb6795583";
+      sha256 = "b0704bead492263ec9c4577ff4a62a0a8991ea037d1c50fb30ca70cc3739431f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/is/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/is/firefox-106.0.3.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha256 = "651d29de95edbf3e789259134629eae2cd0d6ac756ea602e133a9e7f7a7c4534";
+      sha256 = "0760f29d86b512d142cb8288bc32c32ba4535b42361946fe9751755b86a5d40e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/it/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/it/firefox-106.0.3.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha256 = "d9eaae70584e1d2523f0e10896e2f943b034445b24590151d83a11d10b8d6d80";
+      sha256 = "3bd1d12a7478179de8a88b60c597e83a36cd5865751937810a6650735832aea9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/ja/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/ja/firefox-106.0.3.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha256 = "27ffa5b43fc50b04ceb6bf8d83c06dc5eb0c594bdafcca5dfa3fa2911d4367c5";
+      sha256 = "f6d977565bcbe67a00bb7b0cd2a981cc8f308a2a6c06008d063a4da6fa8a8125";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/ka/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/ka/firefox-106.0.3.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha256 = "b2458fd9e59a863ed9b2fc27df76c9d08751a4d8a38a7b75391ad7429b6007e6";
+      sha256 = "26288ee314f708a36ccdd584163962a5220398de1e8801c0cbd77fd7daa7a1b1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/kab/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/kab/firefox-106.0.3.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha256 = "5ae2300865c9b4259dcb0ad0c04ce7ee20220412590c14bfc0fa3f3fe6f499bf";
+      sha256 = "15257692589a80497c667a171f7348b4ea8db63afea583ce2db948d1be72a095";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/kk/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/kk/firefox-106.0.3.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha256 = "18d9192ca60825e69e2ff2f20b9d80e15841b4357a15bfa1772b3dda1ac82338";
+      sha256 = "16fb0d6b793132af4ded6fdba8cc8f160aa111c3b8859676d3d693c64b0338f1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/km/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/km/firefox-106.0.3.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha256 = "2d7c01f03a96679cb89db9006a16e8860ec66637c8ccaf442f11bd3546640cf0";
+      sha256 = "030e15c8a1b9826f6ad9f458ad00982bb0ea93ea1f5ad19e19efe207f928939a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/kn/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/kn/firefox-106.0.3.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha256 = "d86317c4e6e1c8401408e7ae6604d754d398f0f5c4ae98ca1ae31b56e3ef932f";
+      sha256 = "6ea17eed26aacddf3016a04e953c2fc20cb973275f70d37179966f3a4992253e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/ko/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/ko/firefox-106.0.3.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha256 = "1e95325f28b3819ad65ff0349d56960c64bbd01a10a8a1686fbb43aa37cb2099";
+      sha256 = "57b9450a1a44ddbfaf1a2e0cd5dd701692d63c54258de6965a5b7e7a4f1ba34a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/lij/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/lij/firefox-106.0.3.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha256 = "e51203491e50b3fdd4fedf222de92530d0f643a4073da840a656ebbb6afa4814";
+      sha256 = "ec69ee6dbb47af8ff3d91ac317fc7e6b4d94ee515fdfe0197a832f8960e9f201";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/lt/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/lt/firefox-106.0.3.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha256 = "149a79f50070461c71725c2fa07177f660a6fb3bffe2b7f143def76cb3c35ae4";
+      sha256 = "56c0bdb64b493177e099555c591fc3379a9572f5a3b7f61d9c3fcf2d623c8a89";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/lv/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/lv/firefox-106.0.3.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha256 = "bf19016f98ec6d300b6e7e1bddd8f101ca9367d886c8365d17bb44df1fbcc274";
+      sha256 = "e06d195e2d8c3d3c319d7feb1ab68b947e89993efcfab50f0671e2fbab892ba2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/mk/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/mk/firefox-106.0.3.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha256 = "663ef98d22e3ca66ac9c339ec5805bbe940aca63b1e321fb6fcc03bd26d1c949";
+      sha256 = "3bc69c36d17ec8c23c2036968ff90c5bc9eff671b178b2cadd5d0878d15334e4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/mr/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/mr/firefox-106.0.3.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha256 = "a207db0ddf400cb54edaf6992a47e4bae65afc0262534fa37e5c4707abc87d5d";
+      sha256 = "5ba8997b7bf593537d09e624bd90a753996bbc01134a82795d2564d3397c3a63";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/ms/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/ms/firefox-106.0.3.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha256 = "8d1abd8672750bd881b62f2fd4ef7b3247a63cc1ded01c3c2ce991614b522996";
+      sha256 = "17a860e0fafc415d1522ae046ca32dd63e9913f03da913bb720ec5178eb0824b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/my/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/my/firefox-106.0.3.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha256 = "fdf33de4e57d28e603a1577ec855be4626fac1db2ee9b73f5272729858a6dd4f";
+      sha256 = "17bd6b39e1c00755077488cd1081115d8766c71233df68613434577020550b3e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/nb-NO/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/nb-NO/firefox-106.0.3.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha256 = "1818f104a255c9dffd1e6bd8538cbd30c5c341711cd240335e317e176a696c71";
+      sha256 = "e54acc8694b15c8b78c4f590ab47079eedc377f5c6256140e28757841416d180";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/ne-NP/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/ne-NP/firefox-106.0.3.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha256 = "d38d2dd5faf44450fa64f415c360688c7acebfe4cef06dc89c8bac66455f64a6";
+      sha256 = "3bc205b224f1d827488b8aef743a1ea339c05ac711bc0c921ab957561410b600";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/nl/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/nl/firefox-106.0.3.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha256 = "5331aae4ab2dae40be77cb7e6a6a01f9c76e76c6a291d63ca2f344ed59ca615a";
+      sha256 = "4fb99ce202b0671ffaa3abf78e683c2e687cab5a1081a34d1dbf93bfdc855185";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/nn-NO/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/nn-NO/firefox-106.0.3.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha256 = "a79e4a6cea928c6d3ea0c0f555d1e6eff5213afc84202a582416d3b6ab2ff9f9";
+      sha256 = "340288ea958ccfe0af479094d23b01c0b88034d67c3d154613923eec23191392";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/oc/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/oc/firefox-106.0.3.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha256 = "eec2e9932a84a9604b0dcf049d28c41c6d7bda994b0e11c16293b977b1b65c89";
+      sha256 = "3da7ba90ebb55823868adf45d59d9c480d5ec3b1d91506c2f9ac265627c89d4d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/pa-IN/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/pa-IN/firefox-106.0.3.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha256 = "0c85aed3085e28f1274dd09336ae5e577febfc9c9322187cb98f7ce2b077013d";
+      sha256 = "708b1c2c33295d1fb9f6a852c4db85fa13da94f16050ab1fd1a8e1c4c99a7262";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/pl/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/pl/firefox-106.0.3.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha256 = "8562567e75385657e7ad682b5e9d2f6624e9569788e4c572a63f051d7a58a573";
+      sha256 = "852995b094042e39dcb70876679d322a02b76595632682277b7dee45e5ae199d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/pt-BR/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/pt-BR/firefox-106.0.3.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha256 = "a8645f76303929ddf2dd090e1ab58ec90fde03bd030a98f669a60afdb4d16e80";
+      sha256 = "feb01adeb4bde5bf182c99fb381e0600a7bd6bb84e8c3266fa81f32fb710e8f0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/pt-PT/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/pt-PT/firefox-106.0.3.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha256 = "aab96db900f43a32866fba9a5cb7996919155046e5bd4090a633aa842fb13829";
+      sha256 = "4184e119c458df3200ba77030913f2a44a8f0845289c50511a18a8c48c3dc86d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/rm/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/rm/firefox-106.0.3.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha256 = "b310207c893c7d304d358e9b8cec9d94596b4c937158045afb0e620ae8b7926c";
+      sha256 = "2243b8d915c687e14e230f518707f42519b0089dd87dc05c1004b3a5ada53f3a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/ro/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/ro/firefox-106.0.3.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha256 = "f18c3ff90f12195751faf4c0ad40d747fe459880f1ad2e0d2bc25f0671afe3a2";
+      sha256 = "e8f457a1bd2c913b45ecd509f7f2b47c3f72db11cf3e319d42593a032b17dce4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/ru/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/ru/firefox-106.0.3.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha256 = "564b7750a35a85078335dc9b6f161bcfc62aec37732c251535c1b3e5414130a2";
+      sha256 = "18452434a94044dfbc9cc9d8a7a5c2812a9b6f042d6f5e1cb711c3b9384a38dc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/sco/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/sco/firefox-106.0.3.tar.bz2";
       locale = "sco";
       arch = "linux-x86_64";
-      sha256 = "24f797a7e3bb82cce34c273a4634576288b98dedaa87303bb1138fc6cb3a0ae1";
+      sha256 = "4f2dbb99229b5b77620ab4eace76603a60200755aacb32dd708903f59d973c73";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/si/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/si/firefox-106.0.3.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha256 = "1422779ad86ae676fc7c6260c744d9e2f719550d6290794e047027603991cc42";
+      sha256 = "034f5aa862f91682d1900fdfee6019bd6ab0f08e04112a8858be23cf5c76616c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/sk/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/sk/firefox-106.0.3.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha256 = "6ebe551cc3b405fb9faf3f0ac592577d8ae70b43b959e690a509adb2a32b996a";
+      sha256 = "5531cad398d274e8cdd4309754aecda44f5bad7c31262a86aad4c38dfb0a1333";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/sl/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/sl/firefox-106.0.3.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha256 = "93acd1a4f81e649056125a93d4b932ed6dd73349589169782d5e69754bca8641";
+      sha256 = "6f7d89cd53186103d902e1bc5963bbb09107e6ce642adbc04d346255ac6a636d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/son/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/son/firefox-106.0.3.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha256 = "296e7bb53bb44ffd7036dcd3cb683a6250e58ca8cca92a08d849fde8ef5a9aae";
+      sha256 = "98e0a9a93159f1db4baaeccd145e4e9519232664feb3492d61292c90884da8ff";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/sq/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/sq/firefox-106.0.3.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha256 = "654693d85aab899cc0a7402654808bd1f1de4d662e89fc6911a1d76576f1eec3";
+      sha256 = "2052fa7872e80d020600af5c146516275d5f4566cedcb2ee547a13f5e73037df";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/sr/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/sr/firefox-106.0.3.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha256 = "35dded72957eaf0f41732ea266815b3e999306c89b09a34e469eb1870ab7e0d2";
+      sha256 = "b1401b7403aac0a6e9bcd5200646fea6694509639e1bc7d87d67d86e5f005220";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/sv-SE/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/sv-SE/firefox-106.0.3.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha256 = "c163a543ab17a2455818961f7d05c21fad41aa1f058e72a6933062d9aeb46120";
+      sha256 = "eb7889b5a3412945fcb1a5b75890a028e387c1e21a5aa5c7cb38f6c51c706c02";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/szl/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/szl/firefox-106.0.3.tar.bz2";
       locale = "szl";
       arch = "linux-x86_64";
-      sha256 = "89db4c0a6374cc59c79fc2c01f4b4708ee8945173f2d479c9f1bb874fc563f3c";
+      sha256 = "2079250dd3f66a5efb2b1b85362a04dfb45d835c72d9122ee80e0a7a1055bc7a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/ta/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/ta/firefox-106.0.3.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha256 = "31a37e0bdfbe64bed707d638e99966d188cc19b4281373332f28897a23f1a823";
+      sha256 = "10e74f8e866ef435622c9e4e67a088e77d51c957afe250ae925497ec61202812";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/te/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/te/firefox-106.0.3.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha256 = "ed43c3bcb25393c45fec508c2b7a186b831644c4dcbbea13b04d292b7e9d3d37";
+      sha256 = "1f077da289e7b76fa09dcc40d976992cb92893220e595a7103d5efe754cafe05";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/th/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/th/firefox-106.0.3.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha256 = "749bd07bb5688876a622929fd7c3d1b564b177e04c107f47ae3194a19d51c9e2";
+      sha256 = "f127a65ca22e29d88940defa640f212e7cd804ab1700c94d9e2d413d1456e169";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/tl/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/tl/firefox-106.0.3.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha256 = "e3b95230a96f2d21816652b3415606d058e1f61047fb12c8df8fa7faefb55fc4";
+      sha256 = "5ae091d179b85af53a4a7ecaa0bb13d1fe9658bbc21fbc18a027f742b940a154";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/tr/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/tr/firefox-106.0.3.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha256 = "6794ae7099b774eda4887f3991539ce1b332132da962664db665ba6c15bab3a2";
+      sha256 = "9c1551fe9c86d3fa044804657cfa80503bd28cc182b14bee83be4e529fe4d299";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/trs/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/trs/firefox-106.0.3.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha256 = "69880d46bbcbb7e1232f5d7591a951c04b0f53e949769eacd3dcc9d6b7e1b41e";
+      sha256 = "2a66bede6e02846c55207d5e556e0381da6ee7b39f5ee90d63a4535d49e5df3d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/uk/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/uk/firefox-106.0.3.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha256 = "44412afcec90e901dff146d7d7ddef253da1a287847ec0133c4403c1bbfc38e0";
+      sha256 = "c09d340c70e58ea1c1d95c76102056b474be0f14579fa39090df45de4d4e1911";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/ur/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/ur/firefox-106.0.3.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha256 = "3dbdafb2cba4978141e59c34946eec2c85eee70d6af26a7b3a6f49f42ea21461";
+      sha256 = "9bb8dd1d033c1839627e684835b101c6b0c1898ed91cea158f9840ae16344fc4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/uz/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/uz/firefox-106.0.3.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha256 = "0fc317d758bd97acd29be9fd558c617ef2ba6b05ea191037f6186f4c2872a58e";
+      sha256 = "4dbf714bd6fd6a81fd93575f295b9468dee8ea6d1b15851bec52eaa23d825aaa";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/vi/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/vi/firefox-106.0.3.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha256 = "937fe371888bc6ed844117658d2cbc229a7bba72ef5976ba34c8d78b42315953";
+      sha256 = "bebd1b56a963c5fb6934b0feee2db4e4d7ac39c218ee71370f98280414715f40";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/xh/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/xh/firefox-106.0.3.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha256 = "862fad90ca797a244194728aae810bc6d71e597c56a8b278e279a61c1573e3d2";
+      sha256 = "b65497a0b633789641d1794a0bcc96d77339a5b08c9adcf23a9ac05936f99d2b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/zh-CN/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/zh-CN/firefox-106.0.3.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha256 = "45f36aa501abc63f03acb631e8cf473f0a85533b2eb7b37ceef64844388167f3";
+      sha256 = "5308893259e84866e7a9085dbd9323eece94ee54fbe933dbed67163b1097145a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-x86_64/zh-TW/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-x86_64/zh-TW/firefox-106.0.3.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha256 = "9c3f1a93c2f6681639e9341d9e94f14e095d69bdcad9491fca35a8b96aeda507";
+      sha256 = "a6da14bc65a44c5e082a8aca9b7adab4c40b43a6c341dc3e80cebad2bf5fa695";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/ach/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/ach/firefox-106.0.3.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha256 = "ff7cb6615610da86deb65b637995c169e169883e34bf04d992978b34ca048c14";
+      sha256 = "c4973a0988bcd5459a8688a3b05ef4c59ec4926ef662c797950e395abfe5312f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/af/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/af/firefox-106.0.3.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha256 = "751a67836897f9ca51c6bc05e14d9324d8338f8eb0336a9019279dc880a363ef";
+      sha256 = "79eebc1e6f3172428ed685399b7502d90061f787a2b07336867cf482cec797ef";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/an/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/an/firefox-106.0.3.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha256 = "9be574726561492a29b979cb2fc991f71ae2c81da12539d8ced43d49414a7bbc";
+      sha256 = "6a54f2b9c3ae8befbbb81948ece27312673021a00b7b23b7a6db9127d5354339";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/ar/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/ar/firefox-106.0.3.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha256 = "81805067f99e3b36eb5978b2e1f2ff8a593f7f2b04b34899a23a819e445a3aa0";
+      sha256 = "d46344c1a435135bb6bdf9c5b8676e71367c2024431eecfafd4d2d5fd0eae1bc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/ast/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/ast/firefox-106.0.3.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha256 = "4aaefafb226f2332f863ce27ec660183f70dff35be2fbb9de92366f2ee5a7210";
+      sha256 = "d35f5d34ac377724708496e32c1cbc82c9770eb4ca99804b55095d10c8e379d7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/az/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/az/firefox-106.0.3.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha256 = "65876b65e0081365133f0b56cbd4c0408489f9e4774120a7174b468d33e63a95";
+      sha256 = "8e26a4f3070ad17d8ef9ea0a7eeed07f488a891bffae963f082fb932d90bac2f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/be/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/be/firefox-106.0.3.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha256 = "777a7acc4908be97fb1bc2cdce4a6556411544e3b08e12459d9768b97c780be2";
+      sha256 = "06315e7c19162f96b2a54115527167ae02c56c7f1797e952d268e6f6e1c27286";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/bg/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/bg/firefox-106.0.3.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha256 = "4a84f6843fe96ccc907e81446a903f00bb53f895d1908890ed986d7178b6b2a1";
+      sha256 = "1d96aca3bae1dd7a725e6ca79018f3909a4008757cc16ad7b6ae897bd977e624";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/bn/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/bn/firefox-106.0.3.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha256 = "082a903c25901df9c7ab899e7a64f873e54b0c2dba0a29c5cd28483e8811a2ed";
+      sha256 = "c8cc8903f532568708217f8013b202b6204f6cbf9bf732cea5adbcfa3ebb5604";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/br/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/br/firefox-106.0.3.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha256 = "096c99a050d60f5922207dd56e4e63ab979567393ac2b65815974594e4f05e98";
+      sha256 = "b7b8482c4c5408f278ee653096c673fcbddca8c441045de0f8f2193f2031bbea";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/bs/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/bs/firefox-106.0.3.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha256 = "94b8768283c4670b04e40dde655d2ca065e37accdac0e7e80bb55c95c95ab411";
+      sha256 = "eb3f1adf762af8801e86e1f9d7e775248f7214bd8d448a64bd37c8efefdf4f5b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/ca-valencia/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/ca-valencia/firefox-106.0.3.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha256 = "bd3600ddd2e05aa75e18fc73bad52fb60cc2a4f2fbf73f6fa539e79b22796345";
+      sha256 = "dff88888fba09e6c5508a14d94594ff794aec8ba515078804346aa2fe9e31c8e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/ca/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/ca/firefox-106.0.3.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha256 = "3c6e4eaffd1b54ad058e7c121287cae86e1352a981962b142abdd4c49c8f1070";
+      sha256 = "050c9d662284471f8b6da31ad32ae0016bcb622d35ca96f4524abf603dce59bb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/cak/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/cak/firefox-106.0.3.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha256 = "c2b86923123f53fa1b2b897945b17e30d5392b2105b20db00607e59e44c4f46a";
+      sha256 = "1a377cef57eaea6594a95fb56adc1cf8296073e27266f9e1e42bc7a37fa2817d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/cs/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/cs/firefox-106.0.3.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha256 = "44a3ba503bb5a7ef7d2573025aa099e264e72aaf8030bf9e7d6c3ceb82a2e68c";
+      sha256 = "97a1d76274cf524068035d3864f1e304c964a82cc32cf62a5de29b276b7d7c61";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/cy/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/cy/firefox-106.0.3.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha256 = "0304334256b8d47d8a816852b78d3c29af989b7b0f2d7940e95b452fe104a5a4";
+      sha256 = "fea97ffa123a66631fb656cad681a18f68f9572a1b8c41f25ff7896ff2f83800";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/da/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/da/firefox-106.0.3.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha256 = "b37ade9536c34da27c8c91b22be1d45f165eadd84940f985d8497335751673a6";
+      sha256 = "d275390ed892c69e3d3cbca26cfb4ddea2bc0a170475278c63d73df40183a894";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/de/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/de/firefox-106.0.3.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha256 = "cad1df16c66cd4562162478f761ced90e4a1d12295e0ca463b9696cc0b008217";
+      sha256 = "2b7effdc826a8f70bed63e76a0633761e8f1115bae5341c4a19946a3dda63e45";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/dsb/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/dsb/firefox-106.0.3.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha256 = "f95273407309ea09d910ca24b6006058cb0c9bd64d882b3e8f65fd35ae02a372";
+      sha256 = "106ddd9bd6019b01ec736775dc6bd4d6f96170fb42a5730e14818acab40ebe9d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/el/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/el/firefox-106.0.3.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha256 = "db63e09480f68a581826209a4b310a9613ab6ff121ad9acf8af08ef5ca62cd4e";
+      sha256 = "fd78d309bc7533a9fdc303274d4a1f021dca67b9fbeacb7f1eb2a99a7dd00758";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/en-CA/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/en-CA/firefox-106.0.3.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha256 = "fcdf6248e9af0e06b03dcb8d58c7bf83549c9be3870263493af726350c6132b4";
+      sha256 = "1cfd23d00c316923bd69a1e5b306b88d8993a35bfad5255785ad98880598d259";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/en-GB/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/en-GB/firefox-106.0.3.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha256 = "b16c35485e553e2696eeaf1edc5ff694ec305aa9d2f275f220a7edb07da63ea4";
+      sha256 = "7234cf1d21094d1040dc47567f7cb135e7e88b6a8ade06c056443899b1770aa2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/en-US/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/en-US/firefox-106.0.3.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha256 = "c38e91cc105f2823867edb9f3fa1859dd9d2c8becbf233b92ed6c2a1f3db2098";
+      sha256 = "e9b45716fd2f6d40d6e94f25ec5b973f1c31700a0c6b5b7b5f7d8f22fe933d0f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/eo/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/eo/firefox-106.0.3.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha256 = "7c3772deb11133747b044f3a6154cc2bc5473b4aa7b62592b5468c0431a9142c";
+      sha256 = "c4888b0636f96f95986bd0c128095f6195fce81672a220a520e7d11f0f3bcace";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/es-AR/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/es-AR/firefox-106.0.3.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha256 = "1d32eee719c6b3935ba7f9ad9ff09093ff023ab19b272b72062cbf2d600dcb46";
+      sha256 = "4e3c551924255eccfc37e35c83919cb22ab9c0b00eb7bac20aec3674f3b79069";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/es-CL/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/es-CL/firefox-106.0.3.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha256 = "542c76e72142bda3e0a30f6fef089870454a4e386c610a56a87f204af8e79333";
+      sha256 = "7a00e0b06d682b60440c94cd79faf9c53cf371aa86e8ae4308a701ffcb207705";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/es-ES/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/es-ES/firefox-106.0.3.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha256 = "96b6f287f95c21dc101f0a9c4777274bbd048273137144c8af0d3192d15d173f";
+      sha256 = "87539b760616c22f3bbb5e983bfe51492d84f60f4778a7f4dff240eccf8257a9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/es-MX/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/es-MX/firefox-106.0.3.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha256 = "ea9ab69d3845a3ca5c40f075322f396157df1fedf06f7532338edc0e56f00347";
+      sha256 = "065996e24e6a2253a3a06e33b666b9106e2c60c42d37e6d8faf6c0f5d7cd33d2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/et/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/et/firefox-106.0.3.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha256 = "5c6f31f84dfbedb6353f7ea1ad0b30afa6026cf097d1250657f7a53d4bac8f63";
+      sha256 = "9cd9cbd6b93116bd0df8d98b38b26672de34fb39c66eaa9abb1082f63e9e18a4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/eu/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/eu/firefox-106.0.3.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha256 = "31ac00373c5b6225c196cb2d68777e84a40a7f45acb662c8b91348cdddc4f005";
+      sha256 = "f336ec889a5fb57e4fe2a94511301cc688979caf54219e13d2dc95e238d23c59";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/fa/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/fa/firefox-106.0.3.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha256 = "e9685352aa8739d9dc74eae40207cc2aa29789eb38d8b8c41b9d548009503748";
+      sha256 = "0624d7e83b41e5feb32aa5709fee95449e938ad953a922018ebc9cd8aaf82fb2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/ff/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/ff/firefox-106.0.3.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha256 = "79e74b29f58825fc0f52a238c5427ebf17f1d2fae8832c938e1e9d9a8a56ad74";
+      sha256 = "35c244b150bb5f3f12b095f02b94838aeba5de4b4b19ab3c2b1895d792f5cda8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/fi/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/fi/firefox-106.0.3.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha256 = "87c64b2a7cdbe464971707fd815b3f85e3b474f697cd2930c3d1f7ab9967eaba";
+      sha256 = "2510bd28ca158d9ff51abac42dd3c2321afcd1d3951d8d72878241aafca5ff51";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/fr/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/fr/firefox-106.0.3.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha256 = "6641d4ab2f34c498abb20f6ae24684791f40d4c52ad3be8c3b36551fce8a2633";
+      sha256 = "a07d6c6ec4f1d5517faae488766e1efee7733d0c4069e4aa91682ec11848798c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/fy-NL/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/fy-NL/firefox-106.0.3.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha256 = "2674a6ba3e045cd5408e6784751e0df57cbf3d8da78aaa2c96936ef469a4961f";
+      sha256 = "16d12c88d3a3668a38904fe4a6a2731fd3909d1b62ac5af58c0275677b4d492e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/ga-IE/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/ga-IE/firefox-106.0.3.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha256 = "a2719929b4a7df16afd24f7cd34bec351ede6b9b6813cf2a4f8dd29ca3fe4e55";
+      sha256 = "5e76da71a864bf8a894e1b615eeb6f66f8886487be7baee687a4581ddb20a573";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/gd/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/gd/firefox-106.0.3.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha256 = "2cc0d55e9e850036d5a5e2e592259e7ec7ffb5ffd55d782a2fc7f75420ca0e0b";
+      sha256 = "91983cd398c49881971a6972f6d20f599d752009300757712a093691f9778af0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/gl/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/gl/firefox-106.0.3.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha256 = "b718dd6e7a4a88bbc0a5a0bb3adbeb3934e91c0d20366a4bd961cad5672f617b";
+      sha256 = "7336d539599c41d12b12c5ea353c65dc5e4c0259044a23b3b1822f7e6d1a1479";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/gn/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/gn/firefox-106.0.3.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha256 = "41f96a2050cdb77c973b836d5210deaea06d3a442e4fe26ff5507d5d46e56cd1";
+      sha256 = "259f56c94a0eee5005aa7da7542d3297e6d205d7ff5c22f96b2a9f5302a71996";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/gu-IN/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/gu-IN/firefox-106.0.3.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha256 = "16bd5d310065f2212b1d82899a6c3b96a084b8aab5c056d513646860eaa62466";
+      sha256 = "f78689869d21c2b6dcdc17abb3ac56bc59af2da75b4d6c8c0b838e799576651e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/he/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/he/firefox-106.0.3.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha256 = "8d47900c31dd65267f3b69df8774d7c9d86adf61e6a24c71b35b94e7ef014eef";
+      sha256 = "012e5f6faee74c3b9f643d4cf288bf0993088b62959eb6329a5588d7b8f3059f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/hi-IN/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/hi-IN/firefox-106.0.3.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha256 = "2c1f46a2fdfd3197759b90b2d8c99338222fd58cd6f954c611ec6b134e84b560";
+      sha256 = "1755e7f66d3ce6a737dec1b79c54e03ccfe8897b6898830e42c1744e5cf0bc35";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/hr/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/hr/firefox-106.0.3.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha256 = "a9ec34c078067af32321c0961a0884611f81db6ae5326cfbf43d365971d81907";
+      sha256 = "af48c9ef10f7f1f32b83547d361835b22b7668f323fd5ed16ef1615adc9e7b83";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/hsb/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/hsb/firefox-106.0.3.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha256 = "7049c623624bd2a77a60a46cc26d03046c10e6b9fa16f0f15c3ccc1280c60a0f";
+      sha256 = "301c5e4b5bb9815889b652cf609b7cff261fe488086cbb1c718f79456da3fc06";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/hu/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/hu/firefox-106.0.3.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha256 = "3e16bd536849182fa379940fcae415d7f3c4301a6db4a69ae3d18fa577a3efff";
+      sha256 = "af1d857099344e7304bc7ff3b8bc51f8d1337730767c80f0db400a935b490c52";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/hy-AM/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/hy-AM/firefox-106.0.3.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha256 = "160a129e8b45fe510e48d5af2d47784918abde95742b2af9e7c07021289afbea";
+      sha256 = "2569d8ef038ca29dc59a7f423921c1afcc60e3cbd882d7b061a4de6a1c189a16";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/ia/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/ia/firefox-106.0.3.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha256 = "a6a4ad785e368af7297cd81de7b8b84ad71e23fec7dcf29e98dec4c4d6ee0113";
+      sha256 = "8fb116fb83b55279df51caf2d5e4e2c0475ceae98c3a8f59a1c217a086dceee7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/id/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/id/firefox-106.0.3.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha256 = "e20fc5d397d6164daea9eb4bd7b0ea867d5e4c92f5214f4f17d974206fb873b1";
+      sha256 = "37c973a9d2b2ffce6685ae652860bb384fb50570d3f4c22a2be600531a218d7d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/is/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/is/firefox-106.0.3.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha256 = "c3702a5614e26c8ed18c16b5da89aef502c4782a9d186c66b7f469a98a979b1a";
+      sha256 = "463814e5a96ca1f5a16f6206951dfb662784222260ccabc06fd9f212b1f26595";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/it/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/it/firefox-106.0.3.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha256 = "4c46c918b41626b18276d5cc4aff99d5a0c2198e35d914382f9d291d6dc80f87";
+      sha256 = "2c0cbc92ee66bbf5f0a922b427b0ed961574c606671e530c3d9f3b8e8d9dbe9e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/ja/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/ja/firefox-106.0.3.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha256 = "514f482e47b24036797e1d099ee0a74fec299db6cd94e9054876281b3563060d";
+      sha256 = "b31adfbc4f03f4cb0b0410c28a3eebb5f02f529cf7957bedb6ffaa6a079e22d7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/ka/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/ka/firefox-106.0.3.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha256 = "37b633f8ff1c59151de9e19fdd8ba605605ce8cac08ac390252a2d5e6c152ae5";
+      sha256 = "d0fd226ceb44ff4ba7e1817eabd653806a6343e8285d077743b3f76601d5ad2c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/kab/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/kab/firefox-106.0.3.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha256 = "ecf398fffea7aeb1cca615a07b7019a3e6502560f51ad64faa7d605aecd96bf4";
+      sha256 = "dbd293017d716cb350b2739f21be00a998e6d34618f56b6ab63084c53d6482d0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/kk/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/kk/firefox-106.0.3.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha256 = "2ec26c7b974d7ea99dbee18cebce959c47be50351b381cc4c4d2ae5d2af92fca";
+      sha256 = "a6d7af17fd716eeb8be4668d77ab2116ef16a72be5fd594cd8eb182a4eb4652a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/km/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/km/firefox-106.0.3.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha256 = "4f3dc1496fb295ea8183dd0a1fae88059a96bf6747c2eef2cdeaaa8eb5b17018";
+      sha256 = "b45b85869ebd147f44fcb4b813afb32e91fe7831592e3dadbc55163b84593fec";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/kn/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/kn/firefox-106.0.3.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha256 = "c535f442a0ff34c01644ffeb1e961c1bdd6082c7e95a0e1bb96a11ceb7c59b35";
+      sha256 = "61bd032d859396416d48d7afa27dc51a1117b35605e265da4dc8cfc9f45afedd";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/ko/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/ko/firefox-106.0.3.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha256 = "c557a384b02898a2c833141ccd1caf8fdfe9fb6664ebf309d2707d1f6262c0a6";
+      sha256 = "9b74f822a17c3ee9d4f787a3b6efdc7807adb02b9f8c26f997ae3fa828679b05";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/lij/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/lij/firefox-106.0.3.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha256 = "13a613ae949181b221b82b9fe92e42ff23add007a3440368d8d5300e074abfe7";
+      sha256 = "04ef02e365eed5206e048696d55fa3df49db4f4374ee98dda422d7effd8fea15";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/lt/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/lt/firefox-106.0.3.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha256 = "fc068c98c2afbd044dbbbf39af2d757886d65a6194cab353bb49073e05a82e7e";
+      sha256 = "a88c5e217d5bedb98a403aed894917cda97284ffdda676bff73b4b4682798eb5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/lv/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/lv/firefox-106.0.3.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha256 = "e83039f4b306c38ee2562fb4e2ec74d8d92806b170a70fe61a840a05e0fcb54e";
+      sha256 = "9520b8f802bf500255f2e07e1faab1afadeafae2ec1ce57ab8c514a52b1055ff";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/mk/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/mk/firefox-106.0.3.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha256 = "7aa2a1d7210d306e848b905a5d44ee0d15bb54e8f12e4ee23a5fc7953404ebbd";
+      sha256 = "d1ca84ac561e7bf67089c180346fb71a1350bca2d5dbccb20c48f1d9667e76d1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/mr/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/mr/firefox-106.0.3.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha256 = "4566542d424952d3630c410c328cd4c146f840978a5d37f665af3d0ba332f473";
+      sha256 = "377b803e367b36e54bc7f2a720901745bfc36ae95583b3d43a8effb5ece6bb41";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/ms/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/ms/firefox-106.0.3.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha256 = "a8b25cb78b3493e3c3fdd1af81042aee8b820473bd2301a4f0a4ec38caab1276";
+      sha256 = "69ba788924141600cb4e60e370798f426f44010eff6f44ccd3e615f2249adc61";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/my/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/my/firefox-106.0.3.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha256 = "9e113258a9f0bc79f97db9807de6615a447c35d243db543966eb0e79f6f15932";
+      sha256 = "711dfe02b12428d508627b441b26e799458634bcaa2ce8f73b9a599fdd902e0b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/nb-NO/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/nb-NO/firefox-106.0.3.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha256 = "17b2d98d2cb497328106f77be1dbd53912b41c066b1a099f8af64d67f79f13eb";
+      sha256 = "791eaeb621160945c3a647529324f90ed8a6368379871d2ba1ab997228d2b210";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/ne-NP/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/ne-NP/firefox-106.0.3.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha256 = "fad578cfbd91b14ff66e06570bd07b5f23e7a6e8602cf3677d07272bad4e8c0d";
+      sha256 = "d668db53a74b92928a255c75e5f354039811c4a2cfbd79a12ea1e6543ccc6989";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/nl/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/nl/firefox-106.0.3.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha256 = "64019fb5ac2ca70f32ec28e1a54728890219af74ec2758413edc48d9c187eabf";
+      sha256 = "0939f17542b3e51da5fee6ffb0bdf378bb9879bc8c6f5c73ff65c9df6c0c3e0f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/nn-NO/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/nn-NO/firefox-106.0.3.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha256 = "f56012f01809d3b1b5197ebec59d02635bc1e72f3c8dfbe21fe510cf5daa9f4a";
+      sha256 = "b73cc2dec61c097680d4885b637a4c1ca50fec3ce970d5294ecf074e59907035";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/oc/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/oc/firefox-106.0.3.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha256 = "547fbccd4497db9ba216ec93c7944a85496b86f3cad5dbc18de25aa1dd67ca6d";
+      sha256 = "56c79712082f66611194ee25c1cc0ac6717813b86f148f6889a19b8f6bfab8a1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/pa-IN/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/pa-IN/firefox-106.0.3.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha256 = "62f35e782ce5bd4a35d9610e0ad1193323f90624216aea86e6cec6aeb1ce7eea";
+      sha256 = "23f31f719b3956e3e3288e483bcedec649cd7fdeb0d8e496ce9c6b8939a33d8d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/pl/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/pl/firefox-106.0.3.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha256 = "2657ca1eaa03f89eb8e40abb87268fed9189be8a6e8f2926281fa853c762003c";
+      sha256 = "5dc691eb6df81b457562d358f00f60024a58537a3c4e58f41b1e654c3454b7df";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/pt-BR/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/pt-BR/firefox-106.0.3.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha256 = "3d4ad803deae54f0bba2b6ec94951cdeb2980b7f1c19f57dd9ed4de555d69261";
+      sha256 = "c256f6fedbe65587ede43d1d6fcd30313dec63dc26cc8a14557dcea26d1c5c28";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/pt-PT/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/pt-PT/firefox-106.0.3.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha256 = "00fde3c6a5f1be11f92d47ba904f990b58e4bb9c46ab4ad8800ed9081e9adbc7";
+      sha256 = "4034810b68acd46f8b633ea660df39285d517aeab778cefdb449b295f70a76ce";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/rm/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/rm/firefox-106.0.3.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha256 = "d0ecd24e232b2a68c0da03865ae35cde2855163dc5e71b56cac84319af1e9576";
+      sha256 = "31564251db55d332a79e2a669dded1e337415fbd61e38205fc4608e5f28a405d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/ro/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/ro/firefox-106.0.3.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha256 = "5f03a25631b4b7763f7bf2c948c1a610e095f2f87ba8fa217f49baae5802a065";
+      sha256 = "2909d9bdd4614f3e5a882e62242a189b1cd7c827764d8f8192423a2823d8ee2c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/ru/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/ru/firefox-106.0.3.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha256 = "4ba5c10bb06632c63fd42342d6aa3a6171c127431dba6ef878376947ad3eaa91";
+      sha256 = "b8d5f67a8f95f93807fb027de446485bbc48e6773118f0c5c29df2ae85da6ca5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/sco/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/sco/firefox-106.0.3.tar.bz2";
       locale = "sco";
       arch = "linux-i686";
-      sha256 = "2bae09ad0120b77c0ecfe8c9f9db2b6b297dd7867a42836ca27124eaaa02bbe7";
+      sha256 = "1733540d61c033062ab57379042ef3082d8605b8f2a57e71bdfe4cb0222a7f7b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/si/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/si/firefox-106.0.3.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha256 = "3380c01b1ce07b0ad624fe2872ad5cd8053d2b2d51444918bb6455ccc1947bc5";
+      sha256 = "12e6adeb13b207377a430b16091bb56a7883cde4be81200b6cfc3cb96a62c434";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/sk/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/sk/firefox-106.0.3.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha256 = "e48a45bee33b8414921dd07380780d8f13ba1e6b923b717659c14c0a4a3da29e";
+      sha256 = "8a8c0de4aef600f846c0ca1721297f8422e457855a9fd631c03746e8b6c3ffb3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/sl/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/sl/firefox-106.0.3.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha256 = "519a2735c36d182c4c4ed4103132564feab0bdf8afc55c0454bb93779297aefe";
+      sha256 = "9ed77c83ec1a2ca6b01145ba763f2bec4000fd6c25ccdaa7ea1ced3267517b78";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/son/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/son/firefox-106.0.3.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha256 = "704901257ec45996fdfe11ad99eb52eab0573aed1bb0eb560788bd23a6f636f3";
+      sha256 = "35c340200c1c8dd6c99d531d5ce32f713ea6e09b019a4a698017a9a2016e9a7d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/sq/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/sq/firefox-106.0.3.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha256 = "0040245c995bd9d51775b102c41f714a9ba77cecdf1169de6214f467f3765a4e";
+      sha256 = "45123de3970bd6c27a649e393f122762b6e126d27b57606f69e1d796257249b1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/sr/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/sr/firefox-106.0.3.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha256 = "032848b75d881d223c776c51b080b326b4a09e3d7494ed1a4531ed630eafc293";
+      sha256 = "76a2e56153b0a4831503b7f5cd87192a604d6f4f1007932aafcc06172b4a0b28";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/sv-SE/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/sv-SE/firefox-106.0.3.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha256 = "7ac309cf2e56bbba5146836569687df0dc024eb0c5bcac50cc536fd789b2eec3";
+      sha256 = "c1ebc3b6a62c85d434dbdc268ca269473bc4e6d58de59410a5c81dfaf20f9e7b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/szl/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/szl/firefox-106.0.3.tar.bz2";
       locale = "szl";
       arch = "linux-i686";
-      sha256 = "0d4238828f09d4f2e12083f1ae0a3fd13488d100b0d3660dc8ff480b7a1c4c04";
+      sha256 = "92e238e7f07fa630fcd10bfd7ca6bd33d3dd323e3a9f87122d6c0a41acb3dc98";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/ta/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/ta/firefox-106.0.3.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha256 = "f5f8373c8588e34cc0fe60abfe44cb6e2cae83826fb59c7e65bd7bc4599d2fee";
+      sha256 = "b19e4e5fbb5882abacb89ff04b3e453c36cd0b29c6ccc80a83dc9f510a239511";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/te/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/te/firefox-106.0.3.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha256 = "e85fa16dd5c780d3ba92d64c75194b8610fa1cb42002a83ccd81ec1b92dd3ed2";
+      sha256 = "74715e756eb306d627cf4e82400773597f1c17c9dd8dc502a2cb072753dc81a3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/th/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/th/firefox-106.0.3.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha256 = "8aa714a7ef1b4e884364571e8d54057d33923105e5dff50f90ea965cbfe36a13";
+      sha256 = "3e1f9fccfad05ea9487c960dcd1bb0fc4905c6e690b2b85ecf559593bf434421";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/tl/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/tl/firefox-106.0.3.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha256 = "9f3e59cca6c56dafa7682a142630775c2de737491ccc95c6298fe290c06feb44";
+      sha256 = "c90a633917e84fbe05b0b8143acb1dfa2c749f7858f688d75284cfa4e6fd952f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/tr/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/tr/firefox-106.0.3.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha256 = "c1457d4ea162643ceeaa644bb10098f44069c87b65188073587599e0a0dd1eb7";
+      sha256 = "fa08235eed535d66d0458b73e517d2ef1d87a6ec9adae7fd56747e1a8735ec91";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/trs/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/trs/firefox-106.0.3.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha256 = "d7e51bae403116e17acd009bd3302d407c1614c453e9bb0bb6886ee60c45da02";
+      sha256 = "dc6f90bc9ba03b518c9727c71eb18aac21a4f00b0bb2253f1c79d8c575b21b62";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/uk/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/uk/firefox-106.0.3.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha256 = "1c79157df0cd80ec651ab43054ad9064f868d2aeac44e576dd2a08aba083ae50";
+      sha256 = "4794dfd6b8fb4dd2c0ffd38d54e91f52a2038bd076fc3a7bd7bde802e673934b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/ur/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/ur/firefox-106.0.3.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha256 = "be045e0336cd865c4882040d0badbf0fe53847ff88a32f975790cf3b76347ddd";
+      sha256 = "089a373e5d0b857837fed9b2c784888feef06b40fde1ee8c31615efa12dc45a7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/uz/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/uz/firefox-106.0.3.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha256 = "eeb222a8109f98aee6e6ceb1e0c7ef4a59ea1de6953f1859fff62de45602fc82";
+      sha256 = "2c98e74eb3aa52ba1d3716708d374a18d11f2f4b011e3638d318c50b81b141ad";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/vi/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/vi/firefox-106.0.3.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha256 = "be0ca0eeb058c1a7b84d49d66efb04d02a6852f0f77e97d01221a87785ad0449";
+      sha256 = "248bd09dba39dab6a3bc64fa0816e47300138d747e9904fbebbac04e87adb8b9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/xh/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/xh/firefox-106.0.3.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha256 = "281015f7c01ff64c2dbedc154c401761a9070cd05d4971b1eb22e01edd16db27";
+      sha256 = "b9afa144d4643b238875528e1e213a1c17155f478e3d5c96dc2669879f58a1d7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/zh-CN/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/zh-CN/firefox-106.0.3.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha256 = "6d6640d8bb82f081dbaa0c58b5cc4fe65855d232297c02bd5af1f9712fc2d94e";
+      sha256 = "638ff37a0d9d552d1b363053f2a7fba76ca48cd2de50e61a919d2930d4e407db";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.2/linux-i686/zh-TW/firefox-106.0.2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0.3/linux-i686/zh-TW/firefox-106.0.3.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha256 = "c162cb00ad7133eefd88042568fbe74b628ecf70d11b8f50c5259d81477e78cc";
+      sha256 = "7555b126741878c18b32a6439e6d0eb5395e003ee0afa2b04b68be3ff9cd96dd";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix
index 6f9c93b622443..7f76285d0da24 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 = "106.0.2";
+    version = "106.0.3";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
-      sha512 = "2aad75c05c3398c19842be46dcde275581344b09f0c65b51a630cef201545996ee00f8020f52a0d7b6416d9ad52cbd5c71b8f1cdf47cd18e4abf1ba21f7cdb93";
+      sha512 = "226bde9082330abe134d1726cec59b473d4d6839ea55ca20faddb901f032d89eb9d2bd5d887ccd4ba515c6b1a44817420cfee2e9f4f8a79ed46a38287083d28d";
     };
 
     # This patch could be applied anywhere (just rebuild, no effect)
diff --git a/pkgs/applications/networking/browsers/librewolf/src.json b/pkgs/applications/networking/browsers/librewolf/src.json
index 7beaff12a337c..6cac0b4a5ab64 100644
--- a/pkgs/applications/networking/browsers/librewolf/src.json
+++ b/pkgs/applications/networking/browsers/librewolf/src.json
@@ -1,11 +1,11 @@
 {
-  "packageVersion": "106.0.1-1",
+  "packageVersion": "106.0.3-1",
   "source": {
-    "rev": "106.0.1-1",
-    "sha256": "0dg4dvpa4fqhaikqnyqvxmi84g4gw535rdxmax724d0m6ksjm5yh"
+    "rev": "106.0.3-1",
+    "sha256": "0f0nz7fbp9k1pz7i8lh3fq3218crwqw2fdy9ia9hi9nlnybh114f"
   },
   "firefox": {
-    "version": "106.0.1",
-    "sha512": "15f5a65a69e11dd0c463b358cafb5ad0f31db93619b9ec3f89e8c5e14d4d319d9423fe4dcd0dbbcbedc1ad444dcbd8e5e30e483220277f5b550bff6124b66519"
+    "version": "106.0.3",
+    "sha512": "226bde9082330abe134d1726cec59b473d4d6839ea55ca20faddb901f032d89eb9d2bd5d887ccd4ba515c6b1a44817420cfee2e9f4f8a79ed46a38287083d28d"
   }
 }
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 688d6140afb43..e1705efc8ddbe 100644
--- a/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
+++ b/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
@@ -87,7 +87,7 @@ let
   fteLibPath = makeLibraryPath [ stdenv.cc.cc gmp ];
 
   # Upstream source
-  version = "11.5.5";
+  version = "11.5.6";
 
   lang = "en-US";
 
@@ -99,7 +99,7 @@ let
         "https://tor.eff.org/dist/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz"
         "https://tor.calyxinstitute.org/dist/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz"
       ];
-      sha256 = "sha256-AOt0PFot6Qh9voqvi5bagW0HLk2kP8b6A2c8Jdv5vkQ=";
+      sha256 = "sha256-DTMY6n7GXokOz6WSrvFUkC64Siuo1Zy80A4UDolmIME=";
     };
 
     i686-linux = fetchurl {
@@ -109,7 +109,7 @@ let
         "https://tor.eff.org/dist/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz"
         "https://tor.calyxinstitute.org/dist/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz"
       ];
-      sha256 = "sha256-MQrJgdAsNvG+WCx4eeb2UHZp/0LoOIhZZQUKESNIGZY=";
+      sha256 = "sha256-2/fGt+m/EDoeaSune32zmktHVHt8zH2wCr8+stewKCs=";
     };
   };
 in
diff --git a/pkgs/applications/networking/cluster/argo/default.nix b/pkgs/applications/networking/cluster/argo/default.nix
index cefe6b575be17..577e4ba883d1a 100644
--- a/pkgs/applications/networking/cluster/argo/default.nix
+++ b/pkgs/applications/networking/cluster/argo/default.nix
@@ -19,16 +19,16 @@ let
 in
 buildGoModule rec {
   pname = "argo";
-  version = "3.4.2";
+  version = "3.4.3";
 
   src = fetchFromGitHub {
     owner = "argoproj";
     repo = "argo";
     rev = "v${version}";
-    sha256 = "sha256-ST5XVgij1h+4EWLlwdFmIYZ0RPSH5IoTw0YdP0a+Sa4=";
+    sha256 = "sha256-eVd3tH77Z3AlNpMEx+xnOQTELXFeGTLIslE++++Sdkw=";
   };
 
-  vendorSha256 = "sha256-h6Ioy1wBOAOCGcqcLlPyqX5pyx22BIiHKx4ct0HmnyA=";
+  vendorSha256 = "sha256-n8NAxfNZ/q2gdA5N7dTNgvdB549aiRxFPJO4UsfIn2U=";
 
   doCheck = false;
 
diff --git a/pkgs/applications/networking/cluster/argocd/default.nix b/pkgs/applications/networking/cluster/argocd/default.nix
index 296679e487c52..2701a101b023e 100644
--- a/pkgs/applications/networking/cluster/argocd/default.nix
+++ b/pkgs/applications/networking/cluster/argocd/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "argocd";
-  version = "2.4.15";
+  version = "2.5.1";
 
   src = fetchFromGitHub {
     owner = "argoproj";
     repo = "argo-cd";
     rev = "v${version}";
-    sha256 = "sha256-2D9JYQshq9riZsZxFpV10b8bnkg82Jnh4Cx/TSryZ4I=";
+    sha256 = "sha256-UwMJnmvwcN/OuIbFJJEE7A5WFjzfvpe5ljMmbSLQsnA=";
   };
 
-  vendorSha256 = "sha256-n6elT6ETOtbZsFqfwMo9d2qqamS8jdrROjFjStNkalc=";
+  vendorSha256 = "sha256-LmIvNenKV6ie2FZBj/jN70pKe1m8kFg/IQ8z5q8tO8A=";
 
   # Set target as ./cmd per cli-local
   # https://github.com/argoproj/argo-cd/blob/master/Makefile#L227
@@ -26,7 +26,7 @@ buildGoModule rec {
       "-X ${package_url}.gitCommit=${src.rev}"
       "-X ${package_url}.gitTag=${src.rev}"
       "-X ${package_url}.gitTreeState=clean"
-      "-X ${package_url}.kubectlVersion=v0.23.1"
+      "-X ${package_url}.kubectlVersion=v0.24.2"
       # NOTE: Update kubectlVersion when upgrading this package with
       # https://github.com/argoproj/argo-cd/blob/v${version}/go.mod#L95
       # Per https://github.com/argoproj/argo-cd/blob/master/Makefile#L18
diff --git a/pkgs/applications/networking/cluster/arkade/default.nix b/pkgs/applications/networking/cluster/arkade/default.nix
index b60a88da5c23e..3b45321c6f26c 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.8.47";
+  version = "0.8.50";
 
   src = fetchFromGitHub {
     owner = "alexellis";
     repo = "arkade";
     rev = version;
-    sha256 = "sha256-vKP/bexxXbhyJEa6ojLFw7ebDS+NYsZgq2jKtimbE3A=";
+    sha256 = "sha256-DPBQ+MisNgVh2DpaIF//fjIzGvfpNYRS4zpYeUVqLwg=";
   };
 
   CGO_ENABLED = 0;
 
   nativeBuildInputs = [ installShellFiles ];
 
-  vendorSha256 = "sha256-TUaCqHbPEwhB2xS8RSoF7RCSkKFJzQKbuV1PbxApyMQ=";
+  vendorSha256 = "sha256-Kr6m1qhVTiXllm5xaxXKsWAtWbnsDwbwWH0iqc0sKfM=";
 
   # Exclude pkg/get: tests downloading of binaries which fail when sandbox=true
   subPackages = [
diff --git a/pkgs/applications/networking/cluster/glooctl/default.nix b/pkgs/applications/networking/cluster/glooctl/default.nix
index 203b0f37a3bf5..0728a03e976b8 100644
--- a/pkgs/applications/networking/cluster/glooctl/default.nix
+++ b/pkgs/applications/networking/cluster/glooctl/default.nix
@@ -2,17 +2,17 @@
 
 buildGoModule rec {
   pname = "glooctl";
-  version = "1.12.31";
+  version = "1.12.33";
 
   src = fetchFromGitHub {
     owner = "solo-io";
     repo = "gloo";
     rev = "v${version}";
-    hash = "sha256-t/i1UhPfhT7+HAhVBhZKQezqpFrBrzimUHjIozQeJnk=";
+    hash = "sha256-T/fkQxRcwDYppGpAu1sBg8Oe8dAa4Bk/jt4jYMikPBE=";
   };
 
   subPackages = [ "projects/gloo/cli/cmd" ];
-  vendorSha256 = "sha256-MRBnwpuqYElxA4V1x7F4wccKV3T51RopfT37QUr7G4Y=";
+  vendorSha256 = "sha256-G26BfTdXMQP0U4FDRYkJNfUOGfqow714WPNBnBrXLZQ=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/applications/networking/cluster/istioctl/default.nix b/pkgs/applications/networking/cluster/istioctl/default.nix
index d98a09439fe76..b4ae402fa0c97 100644
--- a/pkgs/applications/networking/cluster/istioctl/default.nix
+++ b/pkgs/applications/networking/cluster/istioctl/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "istioctl";
-  version = "1.15.2";
+  version = "1.15.3";
 
   src = fetchFromGitHub {
     owner = "istio";
     repo = "istio";
     rev = version;
-    sha256 = "sha256-ZbOh0BMvYnJQD0WjZcKKiG4ECn1Lbr9760Hn2ecdPH8=";
+    sha256 = "sha256-mgf3xQIsd4j3a5pqZz2UHhsHizACjVC4St1GfsDJsfY=";
   };
-  vendorSha256 = "sha256-RgxGPPNBYXe1/gFNKeM+huPCD6EGBPea5EtciSA9o58=";
+  vendorSha256 = "sha256-P40VPtPxbfL0xpAMLJrqPhyyB7xFTsXMfBSCGL3S4Gg=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/applications/networking/cluster/k3s/default.nix b/pkgs/applications/networking/cluster/k3s/default.nix
index 0fdc7cc4f429a..116fd7de9babc 100644
--- a/pkgs/applications/networking/cluster/k3s/default.nix
+++ b/pkgs/applications/networking/cluster/k3s/default.nix
@@ -47,15 +47,15 @@ with lib;
 # 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.25.2+k3s1";     # k3s git tag
-  k3sCommit = "53c268d8eb90ceea5e1c7865f89db5c7fb8763bc"; # k3s git commit at the above version
-  k3sRepoSha256 = "1w040bsrf981k19rwaaxjsv52pgzc0k77x083fkhysmrca565z0y";
-  k3sVendorSha256 = "sha256-8Xti08sjFk1WKimH/GEb99oqBdFO79WVCvYyXIWMpgo=";
+  k3sVersion = "1.25.3+k3s1";     # k3s git tag
+  k3sCommit = "f2585c1671b31b4b34bddbb3bf4e7d69662b0821"; # k3s git commit at the above version
+  k3sRepoSha256 = "0zwf3iwjcidx14zw36s1hr0q8wmmbfc0rfqwd7fmpjq597h8zkms";
+  k3sVendorSha256 = "sha256-U67tJRGqPFk5AfRe7I50zKGC9HJ2oh+iI/C7qF/76BQ=";
 
   # taken from ./manifests/traefik.yaml, extracted from '.spec.chart' https://github.com/k3s-io/k3s/blob/v1.23.3%2Bk3s1/scripts/download#L9
   # The 'patch' and 'minor' versions are currently hardcoded as single digits only, so ignore the trailing two digits. Weird, I know.
-  traefikChartVersion = "10.19.3";
-  traefikChartSha256 = "04zg5li957svgscdmkzmzjkwljaljyav68rzxmhakkwgav6q9058";
+  traefikChartVersion = "12.0.0";
+  traefikChartSha256 = "1sqmi71fi3ad5dh5fmsp9mv80x6pkgqwi4r9fr8l6i9sdnai6f1a";
 
   # taken from ./scripts/version.sh VERSION_ROOT https://github.com/k3s-io/k3s/blob/v1.23.3%2Bk3s1/scripts/version.sh#L47
   k3sRootVersion = "0.11.0";
diff --git a/pkgs/applications/networking/cluster/k3sup/default.nix b/pkgs/applications/networking/cluster/k3sup/default.nix
index f9586ffa46614..ec7cdb3ecde6f 100644
--- a/pkgs/applications/networking/cluster/k3sup/default.nix
+++ b/pkgs/applications/networking/cluster/k3sup/default.nix
@@ -9,13 +9,13 @@
 
 buildGoModule rec {
   pname = "k3sup";
-  version = "0.12.7";
+  version = "0.12.10";
 
   src = fetchFromGitHub {
     owner = "alexellis";
     repo = "k3sup";
     rev = version;
-    sha256 = "sha256-EOGYOxRhpPHOSo9ccCSvat9kq2SlujPqno8v7/zmuto=";
+    sha256 = "sha256-d9YZOrMZKwkHmo7/b0BE552OLnD/ETfF4n+jE7fQ4zA=";
   };
 
   nativeBuildInputs = [ makeWrapper installShellFiles ];
diff --git a/pkgs/applications/networking/cluster/kluctl/default.nix b/pkgs/applications/networking/cluster/kluctl/default.nix
index d7d439da73362..7b04b085a20d7 100644
--- a/pkgs/applications/networking/cluster/kluctl/default.nix
+++ b/pkgs/applications/networking/cluster/kluctl/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "kluctl";
-  version = "2.16.0";
+  version = "2.16.1";
 
   src = fetchFromGitHub {
     owner = "kluctl";
     repo = "kluctl";
     rev = "v${version}";
-    hash = "sha256-NwjPClD3P9EP7gKPPgKXI3h+kLeGPd7Gf6gZXMCCLHk=";
+    hash = "sha256-rcwtVhtLc49rD6J3AZFumLQrZuTveE7OY+agufe/4MQ=";
   };
 
   vendorHash = "sha256-IC+sjctDqd0lQD5labl+UYWsRiptQKSjSHYf2SGkp14=";
diff --git a/pkgs/applications/networking/cluster/kubecfg/default.nix b/pkgs/applications/networking/cluster/kubecfg/default.nix
index 2b93844788102..899519e741f84 100644
--- a/pkgs/applications/networking/cluster/kubecfg/default.nix
+++ b/pkgs/applications/networking/cluster/kubecfg/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "kubecfg";
-  version = "0.27.0";
+  version = "0.28.0";
 
   src = fetchFromGitHub {
     owner = "kubecfg";
     repo = "kubecfg";
     rev = "v${version}";
-    sha256 = "sha256-IJ/QKqGhhJfqRBVKfmV4jTC2C53DmzmK5AECJg2xdmw=";
+    sha256 = "sha256-Ask1Mbt/7xhfTNPmLIFtndT6qqbyotFrhoaUggzgGas=";
   };
 
-  vendorSha256 = "sha256-kmUhcHZ6LcxtuuucOwcO6TNk2TsWL6lcppD6M6unY2M=";
+  vendorSha256 = "sha256-vqlANAwZTC4goeN/KsrYL9GWzkhi4WUx9Llyi863KVY=";
 
   ldflags = [ "-s" "-w" "-X main.version=v${version}" ];
 
diff --git a/pkgs/applications/networking/cluster/odo/default.nix b/pkgs/applications/networking/cluster/odo/default.nix
index 903f83024ae19..d1773827c76f6 100644
--- a/pkgs/applications/networking/cluster/odo/default.nix
+++ b/pkgs/applications/networking/cluster/odo/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "odo";
-  version = "3.0.0";
+  version = "3.1.0";
 
   src = fetchFromGitHub {
     owner = "redhat-developer";
     repo = "odo";
     rev = "v${version}";
-    sha256 = "sha256-CtlT6nUh0oqjJSWaIqAgu9CNGVHcf+uLNWBCl950Kus=";
+    sha256 = "sha256-+QLRm01JTV7nnMiIvitdkm38E08TsmU6EfrNTUCTddY=";
   };
 
   vendorSha256 = null;
diff --git a/pkgs/applications/networking/cluster/talosctl/default.nix b/pkgs/applications/networking/cluster/talosctl/default.nix
index c19383c2b7936..f5129e6d9a5d9 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.2.5";
+  version = "1.2.6";
 
   src = fetchFromGitHub {
     owner = "siderolabs";
     repo = "talos";
     rev = "v${version}";
-    sha256 = "sha256-XCfT2uSYFszxxj9JS9A+nnFX6gz3gY03xokjoH3/kVA=";
+    sha256 = "sha256-KvwW5VJ5HDXDxaPssmVnqBWmk3Y1qbu9PcZsd+CLeXE=";
   };
 
-  vendorSha256 = "sha256-DVrGpWtHiWWDx4fCpA7fBGr8r+OUzworpwHcK0jj3AY=";
+  vendorSha256 = "sha256-i+SUDFOffh4Ky2kawIb3M6M2Han25yYQbWI0wFjZwtU=";
 
   ldflags = [ "-s" "-w" ];
 
diff --git a/pkgs/applications/networking/cluster/temporal-cli/default.nix b/pkgs/applications/networking/cluster/temporal-cli/default.nix
index 6d86bc79e6b28..abaff42f3a32e 100644
--- a/pkgs/applications/networking/cluster/temporal-cli/default.nix
+++ b/pkgs/applications/networking/cluster/temporal-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "temporal-cli";
-  version = "1.17.0";
+  version = "1.17.1";
 
   src = fetchFromGitHub {
     owner = "temporalio";
     repo = "tctl";
     rev = "v${version}";
-    sha256 = "sha256-XEN4Ntt7yHng1+3E5SlxthEWPXJ+kSx9L1GbW9bV03Y=";
+    sha256 = "sha256-rdDtgSM2wZsHYv9tBNdcSHYXdvvEk5wqdLr1KjoPz1E=";
   };
 
   vendorSha256 = "sha256-9bgovXVj+qddfDSI4DTaNYH4H8Uc4DZqeVYG5TWXTNw=";
diff --git a/pkgs/applications/networking/cluster/temporalite/default.nix b/pkgs/applications/networking/cluster/temporalite/default.nix
new file mode 100644
index 0000000000000..8a4d53797f5ba
--- /dev/null
+++ b/pkgs/applications/networking/cluster/temporalite/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "temporalite";
+  version = "0.2.0";
+
+  src = fetchFromGitHub {
+    owner = "temporalio";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-rLEkWg5LNVb7i/2IARKGuP9ugaVJA9pwYbKLm0QLmOc=";
+  };
+
+  vendorSha256 = "sha256-vjuwh/HRRYfB6J49rfJxif12nYPnbBodWF9hTiGygS8=";
+
+  subPackages = [ "cmd/temporalite" ];
+
+  postPatch = ''
+    substituteInPlace cmd/temporalite/ui_test.go \
+      --replace "TestNewUIConfigWithMissingConfigFile" "SkipNewUIConfigWithMissingConfigFile"
+
+    substituteInPlace cmd/temporalite/mtls_test.go \
+      --replace "TestMTLSConfig" "SkipMTLSConfig"
+  '';
+
+  meta = with lib; {
+    description = "An experimental distribution of Temporal that runs as a single process";
+    homepage = "https://github.com/temporalio/temporalite";
+    license = licenses.mit;
+    maintainers = with maintainers; [ lucperkins ];
+  };
+}
diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json
index ec60c11c79871..cab8444b88e34 100644
--- a/pkgs/applications/networking/cluster/terraform-providers/providers.json
+++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json
@@ -39,22 +39,22 @@
     "version": "3.8.0"
   },
   "akamai": {
-    "hash": "sha256-+EHXB2VH1UWYQ1y6Ou+5VhjH7elhfgLYW/imhN2t15Q=",
+    "hash": "sha256-QbCDaDII+xEA3lXjODsz8jai2mg3N/3uC4fruiLqvWc=",
     "owner": "akamai",
     "provider-source-address": "registry.terraform.io/akamai/akamai",
     "repo": "terraform-provider-akamai",
-    "rev": "v2.4.2",
-    "vendorHash": "sha256-BRPDsb0h9YINJ4dwGM5FEuUto3UFVImRUn/i6gHAkAc=",
-    "version": "2.4.2"
+    "rev": "v3.0.0",
+    "vendorHash": "sha256-LYoRZIr2+NqxwZYaN1HFTSaCl0wJPVr2Wf0OjdqM5YM=",
+    "version": "3.0.0"
   },
   "alicloud": {
-    "hash": "sha256-CyubHE3YFGDt4T4dJ6ZHgvQ6V/nIHK/LODkl7Qm65Sk=",
+    "hash": "sha256-IP5TCFi4NEjnBa9rKCZI6TVFAAyjfsZbmc+PgkwgvIo=",
     "owner": "aliyun",
     "provider-source-address": "registry.terraform.io/aliyun/alicloud",
     "repo": "terraform-provider-alicloud",
-    "rev": "v1.189.0",
+    "rev": "v1.190.0",
     "vendorHash": null,
-    "version": "1.189.0"
+    "version": "1.190.0"
   },
   "ansible": {
     "hash": "sha256-3nha5V4rNgVzgqliebmbC5e12Lj/zlCsyyiIVFlmUrY=",
@@ -74,6 +74,15 @@
     "vendorHash": null,
     "version": "2.2.0"
   },
+  "argocd": {
+    "hash": "sha256-yWhq2WolfL7PQVuWr5P7EH0cM78wGyL2+yezh2WzL2c=",
+    "owner": "oboukili",
+    "provider-source-address": "registry.terraform.io/oboukili/argocd",
+    "repo": "terraform-provider-argocd",
+    "rev": "v4.1.0",
+    "vendorHash": "sha256-hPgZ/2AebjtovopbSEJqsm0J85LdlLWBtP15vaqgLF4=",
+    "version": "4.1.0"
+  },
   "auth0": {
     "hash": "sha256-kyQBl/gdTj1Dlu4/FFowAQbBDTYMjp0JGQ09eBqwHEc=",
     "owner": "auth0",
@@ -102,31 +111,31 @@
     "version": "2.24.1"
   },
   "aws": {
-    "hash": "sha256-IWcENR7OnW2jFHsKTYLLPkZKqgeKdrQE0YceqZ9lduU=",
+    "hash": "sha256-qm6iXQFnCFGSL9TsJlIwl/qTPagSaWbJOmLlzFBFAzo=",
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/aws",
     "repo": "terraform-provider-aws",
-    "rev": "v4.36.1",
-    "vendorHash": "sha256-CwrBNz1HzuTlmuh6fq/hLSi9bG7PUIFx6Fp8WoRdb/Q=",
-    "version": "4.36.1"
+    "rev": "v4.37.0",
+    "vendorHash": "sha256-EnCFfs+REgT3q2OprotXNvnLka4JRfj5c0VTi7Js7zc=",
+    "version": "4.37.0"
   },
   "azuread": {
-    "hash": "sha256-rj/ODxmuK0Ro1KVHh4onR/evtUdKzay9BpQDgrx+eNA=",
+    "hash": "sha256-mjll5ANx063JLSbqohPOhor3GNeI1MUKgUKQ/f5XFk8=",
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/azuread",
     "repo": "terraform-provider-azuread",
-    "rev": "v2.29.0",
+    "rev": "v2.30.0",
     "vendorHash": null,
-    "version": "2.29.0"
+    "version": "2.30.0"
   },
   "azurerm": {
-    "hash": "sha256-ASZs5raOUCMRI+GzncADLtCtc5QJvPfGoQ67n8DiMMg=",
+    "hash": "sha256-TOm7e3yLTsmWCIDHklUncCjI5vbd0u/HWH/koOL95u4=",
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/azurerm",
     "repo": "terraform-provider-azurerm",
-    "rev": "v3.28.0",
+    "rev": "v3.29.1",
     "vendorHash": null,
-    "version": "3.28.0"
+    "version": "3.29.1"
   },
   "azurestack": {
     "hash": "sha256-aSwVa7y1AJ6sExx+bO/93oLBNgSBDJjuPYPY8i3C9T0=",
@@ -138,13 +147,13 @@
     "version": "1.0.0"
   },
   "baiducloud": {
-    "hash": "sha256-7dNFy3UJ20HbacmaZDxv3IRxsDHGgJdMJFa4/pJIYdw=",
+    "hash": "sha256-NKeCPoyeWGWyWScCqCsm4s0U9zCojJ6+OOr+nDdIFqM=",
     "owner": "baidubce",
     "provider-source-address": "registry.terraform.io/baidubce/baiducloud",
     "repo": "terraform-provider-baiducloud",
-    "rev": "v1.16.1",
+    "rev": "v1.17.0",
     "vendorHash": null,
-    "version": "1.16.1"
+    "version": "1.17.0"
   },
   "bigip": {
     "hash": "sha256-uSe+J4AlW8Dt96BVF1ZI/yrgWUbZsl64b/D+k5ysHC0=",
@@ -222,13 +231,13 @@
     "version": "1.20.0"
   },
   "cloudflare": {
-    "hash": "sha256-uItV3BTB3bY8NrjD63oUWZMB0gEscEN4Y6aDTuDQW7c=",
+    "hash": "sha256-DqGHPD1CnkIkABB0sB90zE/mVxo0aXQwu4Et7apuM1A=",
     "owner": "cloudflare",
     "provider-source-address": "registry.terraform.io/cloudflare/cloudflare",
     "repo": "terraform-provider-cloudflare",
-    "rev": "v3.26.0",
-    "vendorHash": "sha256-pifWJoCbV0bIDzDihdvpC3k5d615HTsYHqVV3s50euk=",
-    "version": "3.26.0"
+    "rev": "v3.27.0",
+    "vendorHash": "sha256-tpOyqFpO1jMEfXkXgodGEnFVGMqeAqsU5oou60lqcUE=",
+    "version": "3.27.0"
   },
   "cloudfoundry": {
     "hash": "sha256-VfGB0NkT36oYT5F1fh1N/2rlZdfhk+K76AXNh0NkO50=",
@@ -340,13 +349,13 @@
     "version": "0.14.1"
   },
   "docker": {
-    "hash": "sha256-hUKe9VjaNbiPhbxyFKly5PlKWngU2pl6ygwRJSokxr8=",
+    "hash": "sha256-/vz4rjENlVl9gqtxfqCV+k2SgsHZBcmA9Mz10Y2ay/E=",
     "owner": "kreuzwerker",
     "provider-source-address": "registry.terraform.io/kreuzwerker/docker",
     "repo": "terraform-provider-docker",
-    "rev": "v2.22.0",
-    "vendorHash": "sha256-9dsmWkIYrN+GDd/r7kKYUyj+77hKuVilfpVUMpQMseo=",
-    "version": "2.22.0"
+    "rev": "v2.23.0",
+    "vendorHash": "sha256-0JRJAwc4LbPXi6GJdrIGwuIaCzaP5MtIMuijYoOEjYA=",
+    "version": "2.23.0"
   },
   "elasticsearch": {
     "hash": "sha256-+cktPArBOysc4V+uR3KWsVlxtxSIbuVMCmPSU21xF/U=",
@@ -394,13 +403,13 @@
     "version": "2.4.0"
   },
   "flexibleengine": {
-    "hash": "sha256-2eXNumT1Hkc33bW635qYr5jxlByX+yZ8zSKRpgKWQJo=",
+    "hash": "sha256-yg3o7jsWGJ7/fJmDDbFnCpDmKRu0oEbe9wYoILbVwq8=",
     "owner": "FlexibleEngineCloud",
     "provider-source-address": "registry.terraform.io/FlexibleEngineCloud/flexibleengine",
     "repo": "terraform-provider-flexibleengine",
-    "rev": "v1.33.0",
-    "vendorHash": "sha256-smk44z0q2Ku9iO+74vhb/gk5DvdaJe/wDFg7EtQEh/E=",
-    "version": "1.33.0"
+    "rev": "v1.34.0",
+    "vendorHash": "sha256-m0Bv/w0TZASE3n7wEyCmHRHEpjc3snP5Bxyx+2A5dQQ=",
+    "version": "1.34.0"
   },
   "fortios": {
     "deleteVendor": true,
@@ -423,13 +432,13 @@
     "version": "2.2.0"
   },
   "github": {
-    "hash": "sha256-sNm5/gj4QY7LvYpj5fUNcz/4gf+SiBaeu70VlWZC4aw=",
+    "hash": "sha256-fPT7wqpwAKQKqe9fZZsdPqffIQ9N4Iz/kHpFbTkUTRQ=",
     "owner": "integrations",
     "provider-source-address": "registry.terraform.io/integrations/github",
     "repo": "terraform-provider-github",
-    "rev": "v5.6.0",
+    "rev": "v5.7.0",
     "vendorHash": null,
-    "version": "5.6.0"
+    "version": "5.7.0"
   },
   "gitlab": {
     "hash": "sha256-eNd1o0UjG6A9OTRmcJfcPLLtWIJmdZ+viDnSZhyHpgY=",
@@ -441,24 +450,24 @@
     "version": "3.18.0"
   },
   "google": {
-    "hash": "sha256-gm3Ltq1fpgiaWuR8bdMaj3I9sNSJIfW+/nSn3TKxlxs=",
+    "hash": "sha256-MvLzXucKSqyTO9bjbXtBzh3XsOizw0waMGDFhrYtoWM=",
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/google",
     "proxyVendor": true,
     "repo": "terraform-provider-google",
-    "rev": "v4.41.0",
-    "vendorHash": "sha256-PWSok1sTU/57Xeri4Un5B9Fbwg8gBP6Quy5oIZrjxUI=",
-    "version": "4.41.0"
+    "rev": "v4.42.1",
+    "vendorHash": "sha256-Hzl95NLEZlvTBpCGJYzF5rtHWfYe26TwW0pbtqWmxOo=",
+    "version": "4.42.1"
   },
   "google-beta": {
-    "hash": "sha256-zeCz6B5WmNJVirWOPU+8HYab9hTwxX490Pk1gX/0jd8=",
+    "hash": "sha256-dtj1LWIXvjInGtbXy5FBdNmQzp+PRKXpnYzsSL/fIaE=",
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/google-beta",
     "proxyVendor": true,
     "repo": "terraform-provider-google-beta",
-    "rev": "v4.41.0",
-    "vendorHash": "sha256-PWSok1sTU/57Xeri4Un5B9Fbwg8gBP6Quy5oIZrjxUI=",
-    "version": "4.41.0"
+    "rev": "v4.42.1",
+    "vendorHash": "sha256-Hzl95NLEZlvTBpCGJYzF5rtHWfYe26TwW0pbtqWmxOo=",
+    "version": "4.42.1"
   },
   "googleworkspace": {
     "hash": "sha256-dedYnsKHizxJZibuvJOMbJoux0W6zgKaK5fxIofKqCY=",
@@ -534,22 +543,22 @@
     "version": "1.0.4"
   },
   "http": {
-    "hash": "sha256-ZIV4OrfwUtWuQyp9Uw/sA7tW7JlG2+bAUu8TamyTPbs=",
+    "hash": "sha256-04OMH0+fT4QOV34YdE67avnbC3GoK7xyMGxpILNM7Jk=",
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/http",
     "repo": "terraform-provider-http",
-    "rev": "v3.1.0",
-    "vendorHash": "sha256-LPd5TQbuauXKMXraHsJd5uIdn357CveRyaLmavtMHSA=",
-    "version": "3.1.0"
+    "rev": "v3.2.0",
+    "vendorHash": "sha256-diQ5bYFywVZXziRKiKdIU4grg93vF68bkbMrRpM/vQc=",
+    "version": "3.2.0"
   },
   "huaweicloud": {
-    "hash": "sha256-QBRnlBR+gPMy9gtM2P93Lot4GDW94z7B4BgYs+lT5IQ=",
+    "hash": "sha256-cr7xV7Z4UU+kRykVSOKeuXDiHQPL4CsCJVXf2uTZOms=",
     "owner": "huaweicloud",
     "provider-source-address": "registry.terraform.io/huaweicloud/huaweicloud",
     "repo": "terraform-provider-huaweicloud",
-    "rev": "v1.41.1",
+    "rev": "v1.42.0",
     "vendorHash": null,
-    "version": "1.41.1"
+    "version": "1.42.0"
   },
   "huaweicloudstack": {
     "hash": "sha256-WSJDp+LFjVPquQVMgib/YZV35kktLH2vMCIZJWqakXs=",
@@ -570,13 +579,13 @@
     "version": "0.1.2"
   },
   "ibm": {
-    "hash": "sha256-OcOmcTZe2J0cz9glVi/oLp55QrhsOpT0sj0PS32vnow=",
+    "hash": "sha256-zxPl76D5ddw+7WowQf4LY9MYTGfX3CMEBQofXKwbowQ=",
     "owner": "IBM-Cloud",
     "provider-source-address": "registry.terraform.io/IBM-Cloud/ibm",
     "repo": "terraform-provider-ibm",
-    "rev": "v1.46.0",
-    "vendorHash": "sha256-Zhk2Q7tnL3P/uLo/61o/XiiMKBdmb2749S/Ax1ZrxAo=",
-    "version": "1.46.0"
+    "rev": "v1.47.0",
+    "vendorHash": "sha256-Ggiu+nGTABxK+HiBvY2l/l3+Gqg4GoczZJf69v3Ylfk=",
+    "version": "1.47.0"
   },
   "icinga2": {
     "hash": "sha256-Y/Oq0aTzP+oSKPhHiHY9Leal4HJJm7TNDpcdqkUsCmk=",
@@ -624,13 +633,13 @@
     "version": "4.0.1"
   },
   "ksyun": {
-    "hash": "sha256-sfvmDByxAQbbdPHb9l5tIT5dyu8eA3r63i5FZJYEYTI=",
+    "hash": "sha256-xmBpDYN1MRQ9cyIOqHMAD7RucRkOKmwnmzjIsjxA7VQ=",
     "owner": "kingsoftcloud",
     "provider-source-address": "registry.terraform.io/kingsoftcloud/ksyun",
     "repo": "terraform-provider-ksyun",
-    "rev": "v1.3.55",
+    "rev": "v1.3.56",
     "vendorHash": "sha256-miHKAz+ONXtuC1DNukcyZbbaYReY69dz9Zk6cJdORdQ=",
-    "version": "1.3.55"
+    "version": "1.3.56"
   },
   "kubectl": {
     "hash": "sha256-UkUwWi7Z9cSMyZakD6JxMl+qdczAYfZQgwroCUjFIUM=",
@@ -642,13 +651,13 @@
     "version": "1.14.0"
   },
   "kubernetes": {
-    "hash": "sha256-E8ew1MwQa1DVYZH//ePjZXLQdyRN7Q0yomH0ma0neks=",
+    "hash": "sha256-93cGlfYUH4VTdDYbtGySOUw5Kak7hKs0gxLCT0Bxca4=",
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/kubernetes",
     "repo": "terraform-provider-kubernetes",
-    "rev": "v2.14.0",
+    "rev": "v2.15.0",
     "vendorHash": null,
-    "version": "2.14.0"
+    "version": "2.15.0"
   },
   "launchdarkly": {
     "hash": "sha256-AsFtlCIGvlG8c+PilhMhaMowaea/g1+IXYzEiIIbZ44=",
@@ -705,13 +714,14 @@
     "version": "2.0.3"
   },
   "lxd": {
-    "hash": "sha256-rNqlPyKpBNaIRtiNHB8U8jowWhqdQtDIMxreZ5Dfm3E=",
+    "hash": "sha256-x0f8kP7OsgSD8d9vu99vp7Xq3szwLKxoAZdUCJc8B7A=",
     "owner": "terraform-lxd",
     "provider-source-address": "registry.terraform.io/terraform-lxd/lxd",
+    "proxyVendor": true,
     "repo": "terraform-provider-lxd",
-    "rev": "v1.7.2",
-    "vendorHash": "sha256-ervfG/BAaF4M+BXsp0eCDM6nPWQOS3pthClhArsUoYc=",
-    "version": "1.7.2"
+    "rev": "v1.7.3",
+    "vendorHash": "sha256-omaslX89hMAdIppBfILsGO6133Q3UgihgiJcy/Gn83M=",
+    "version": "1.7.3"
   },
   "mailgun": {
     "hash": "sha256-Yi258SIFSdD+JSi5oX74bhBFYYGYQfSAyYD07eO8MmM=",
@@ -777,13 +787,13 @@
     "version": "0.6.12"
   },
   "newrelic": {
-    "hash": "sha256-pMHS8sS3qqsHjO0B3oFP/KInomYtmxRp2+4LLx9DI7M=",
+    "hash": "sha256-C8lWtFECZrtj6ZyurbysZnCMfX1uJWhO4r188Wobg/M=",
     "owner": "newrelic",
     "provider-source-address": "registry.terraform.io/newrelic/newrelic",
     "repo": "terraform-provider-newrelic",
-    "rev": "v3.6.0",
+    "rev": "v3.6.1",
     "vendorHash": "sha256-lEFcR908CK4RSSO/3kbqQ/wse5HKaqveWUZbzUhUTMI=",
-    "version": "3.6.0"
+    "version": "3.6.1"
   },
   "nomad": {
     "hash": "sha256-oHY+jM4JQgLlE1wd+/H9H8H2g0e9ZuxI6OMlz3Izfjg=",
@@ -804,13 +814,13 @@
     "version": "1.12.8"
   },
   "nsxt": {
-    "hash": "sha256-oXcT1VmwC9a+U0vM5O9y2As2PbzPr95LrUB6KlFKcMc=",
+    "hash": "sha256-TOoRtCKdR1fBjk39dbMgBd7pDJGfjvkQAqfpJzWRwRg=",
     "owner": "vmware",
     "provider-source-address": "registry.terraform.io/vmware/nsxt",
     "repo": "terraform-provider-nsxt",
-    "rev": "v3.2.8",
+    "rev": "v3.2.9",
     "vendorHash": null,
-    "version": "3.2.8"
+    "version": "3.2.9"
   },
   "null": {
     "hash": "sha256-2YM3btZInUlIwp1VkasuugZZ8FervpRviUlx60vhVak=",
@@ -832,22 +842,22 @@
     "version": "1.7.1"
   },
   "oci": {
-    "hash": "sha256-PSkD2HXGmSimJYQPZKuVCGvEa0sSNc4XMRRrM5O+/QE=",
+    "hash": "sha256-7822cLdHruCOYu0UGX5KV0f4+W2lQSb2b5SaLDM8cts=",
     "owner": "oracle",
     "provider-source-address": "registry.terraform.io/oracle/oci",
     "repo": "terraform-provider-oci",
-    "rev": "v4.96.0",
+    "rev": "v4.98.0",
     "vendorHash": null,
-    "version": "4.96.0"
+    "version": "4.98.0"
   },
   "okta": {
-    "hash": "sha256-yUWz6JiejI36QXSzGj36Pzu8/exK4U/DXCdbToSeCrE=",
+    "hash": "sha256-COGXHUjXYGB2QDY0iBG+MvNcxGy87vpGIerQU2XXEmw=",
     "owner": "okta",
     "provider-source-address": "registry.terraform.io/okta/okta",
     "repo": "terraform-provider-okta",
-    "rev": "v3.37.0",
-    "vendorHash": "sha256-qAnMwxTvvds3pOarRTWWVQqOCJKd0wSH2LZoPl4n2uA=",
-    "version": "3.37.0"
+    "rev": "v3.38.0",
+    "vendorHash": "sha256-iGQ3JPJ78Qhj+izR8D4H5oWGq4fF5lXuNHQCmpr7zFE=",
+    "version": "3.38.0"
   },
   "oktaasa": {
     "hash": "sha256-2LhxgowqKvDDDOwdznusL52p2DKP+UiXALHcs9ZQd0U=",
@@ -877,22 +887,22 @@
     "version": "1.49.0"
   },
   "opentelekomcloud": {
-    "hash": "sha256-oqagD7YK/HyAoeI5WBrHuAmWiLoz/1441zne8vqN3A8=",
+    "hash": "sha256-L28nrY2/UBi/W/mmK5ZPQub2Jf9vMethQo6JsSkepwU=",
     "owner": "opentelekomcloud",
     "provider-source-address": "registry.terraform.io/opentelekomcloud/opentelekomcloud",
     "repo": "terraform-provider-opentelekomcloud",
-    "rev": "v1.31.6",
-    "vendorHash": "sha256-AuxvQffKOHPqda8nMJPxWVMui9+d8IhmbPsZK/9A1yI=",
-    "version": "1.31.6"
+    "rev": "v1.31.7",
+    "vendorHash": "sha256-wEtpZzrQoL0yJLsviwHI019KI04O+FAkXMsaJFztL/8=",
+    "version": "1.31.7"
   },
   "opsgenie": {
-    "hash": "sha256-hdLKa2usoDedzOlzPQrADJOqIxtANqTeTamn/DakRh4=",
+    "hash": "sha256-DhECesGkBaQuk43pF4xk6zln+FzgL+1A1rSm0sqg7XQ=",
     "owner": "opsgenie",
     "provider-source-address": "registry.terraform.io/opsgenie/opsgenie",
     "repo": "terraform-provider-opsgenie",
-    "rev": "v0.6.15",
+    "rev": "v0.6.16",
     "vendorHash": null,
-    "version": "0.6.15"
+    "version": "0.6.16"
   },
   "ovh": {
     "hash": "sha256-QaJZQU6bnjXoTCxfP1NcsPqegFyZ6JwP2QgN7zrE0z0=",
@@ -1021,13 +1031,13 @@
     "version": "3.8.5"
   },
   "sentry": {
-    "hash": "sha256-dNyUp+gXrOvMQu5tEnv2dOsXihyd19gdYakIo7+h3pY=",
+    "hash": "sha256-D6w2HfgIcNFfDXeqzuerK8msrFF7vajk80MUxbUxA+A=",
     "owner": "jianyuan",
     "provider-source-address": "registry.terraform.io/jianyuan/sentry",
     "repo": "terraform-provider-sentry",
-    "rev": "v0.9.4",
-    "vendorHash": "sha256-ohPZpFCjawaymVHZoCstPeu+p0erRnfnpbjipT6Sp20=",
-    "version": "0.9.4"
+    "rev": "v0.10.0",
+    "vendorHash": "sha256-OxapqNRE5Poz6qsFjDv5G5zzivbBldzjC7kbwG2Cswg=",
+    "version": "0.10.0"
   },
   "shell": {
     "hash": "sha256-LTWEdXxi13sC09jh+EFZ6pOi1mzuvgBz5vceIkNE/JY=",
@@ -1039,13 +1049,13 @@
     "version": "1.7.10"
   },
   "signalfx": {
-    "hash": "sha256-ke/35QtsYNW+6HVjBrx6hQ+CO2zhZsVLlryWTgI1vRE=",
+    "hash": "sha256-alLC61bEaFiVtoH0Fczj7G0m70ie1RNvTBR+MgYZGkQ=",
     "owner": "splunk-terraform",
     "provider-source-address": "registry.terraform.io/splunk-terraform/signalfx",
     "repo": "terraform-provider-signalfx",
-    "rev": "v6.17.0",
-    "vendorHash": "sha256-hxYQF1sZOS5x6sZtUJg13A6SPZG6Ql20vAs8VDQegqQ=",
-    "version": "6.17.0"
+    "rev": "v6.18.0",
+    "vendorHash": "sha256-ESUNfkllwkS1NcAD30tO90VQcHR5XhdIeyXXHmU/byc=",
+    "version": "6.18.0"
   },
   "skytap": {
     "hash": "sha256-EAimiuQJOt12baZSjDKI+c9UjJd8e26ouOAZIZezw/I=",
@@ -1057,13 +1067,13 @@
     "version": "0.15.0"
   },
   "snowflake": {
-    "hash": "sha256-i96scuSP7I8rcyncUkpBoxxM0D4zp9rNHqWwb9WLbhA=",
+    "hash": "sha256-XjLsRS7n3p0lNVEPx6b+h5TCzK+1Kws/72FNgy3sVbE=",
     "owner": "Snowflake-Labs",
     "provider-source-address": "registry.terraform.io/Snowflake-Labs/snowflake",
     "repo": "terraform-provider-snowflake",
-    "rev": "v0.46.0",
-    "vendorHash": "sha256-43q1SrV7tEt0x7iRUAgBFg1oh8+B9i1i59nlR8kbLIY=",
-    "version": "0.46.0"
+    "rev": "v0.49.0",
+    "vendorHash": "sha256-n6ov9eTlNF/jNDTDOZuuqyFfuv8lDZHKP/5jhFauwY8=",
+    "version": "0.49.0"
   },
   "sops": {
     "hash": "sha256-6FuThi6iuuUGcMhswAk3Z6Lxth/2nuI57A02Xu2s+/U=",
@@ -1075,13 +1085,13 @@
     "version": "0.7.1"
   },
   "spotinst": {
-    "hash": "sha256-D/cLkMAZwjJoaliUmfiLAn6uY1rNt1vu6QS5mQmBQ0s=",
+    "hash": "sha256-9i8mHWn9+ey0tHPXOjZyNixcrdgAl2Y8sJq/q4WlZzo=",
     "owner": "spotinst",
     "provider-source-address": "registry.terraform.io/spotinst/spotinst",
     "repo": "terraform-provider-spotinst",
-    "rev": "v1.85.1",
-    "vendorHash": "sha256-BDYX/4D3R2A1w3k14mON/2KZUg2kPbwePXQQpVanqdU=",
-    "version": "1.85.1"
+    "rev": "v1.87.0",
+    "vendorHash": "sha256-INJLhHiMs/bk3Y8/shtQaW10bUnuhCXdTa8wCNZf0+U=",
+    "version": "1.87.0"
   },
   "stackpath": {
     "hash": "sha256-nTR9HgSmuNCt7wxE4qqIH2+HA2igzqVx0lLRx6FoKrE=",
@@ -1120,13 +1130,13 @@
     "version": "0.13.5"
   },
   "tencentcloud": {
-    "hash": "sha256-0nPMT5jZxqKbCLQmjBywCBh1T2P2Q1NdghXH12BXaE4=",
+    "hash": "sha256-lWePRU8kmOjOq9giCMdU5Aeb74WR/s6wIzShjzDBFjc=",
     "owner": "tencentcloudstack",
     "provider-source-address": "registry.terraform.io/tencentcloudstack/tencentcloud",
     "repo": "terraform-provider-tencentcloud",
-    "rev": "v1.78.6",
+    "rev": "v1.78.7",
     "vendorHash": null,
-    "version": "1.78.6"
+    "version": "1.78.7"
   },
   "tfe": {
     "hash": "sha256-MDlRwB2iVi/Rv7/UtukI6mIDImz8Gnpm5Qv5R6EDpiU=",
@@ -1147,22 +1157,22 @@
     "version": "1.0.0"
   },
   "time": {
-    "hash": "sha256-tDYrKU/kggrv/p8QZ0LbHjQSOaNrQ0qy9ekY7DAXqEA=",
+    "hash": "sha256-FehWmIkL0o2pleafN/mlBa46cdFqCFUS+coOwFPdb9M=",
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/time",
     "repo": "terraform-provider-time",
-    "rev": "v0.9.0",
-    "vendorHash": "sha256-I4CnaSyn32S7FM56dYWZhzGUKByP2DXD0t/eBOL2ALs=",
-    "version": "0.9.0"
+    "rev": "v0.9.1",
+    "vendorHash": "sha256-MLh/we8KNrDBy2BAMZ6B/gBe0p3xJ7l/imNzTHciJjs=",
+    "version": "0.9.1"
   },
   "tls": {
-    "hash": "sha256-q3zt+5zd/bJ42sWbFwuE+rDyHHcZoVBZF4c61aJJkMs=",
+    "hash": "sha256-DBOkfvT0+mlgaWiBHggZUKvHL8jLZjQjRi0xFZKgcoM=",
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/tls",
     "repo": "terraform-provider-tls",
-    "rev": "v4.0.3",
-    "vendorHash": "sha256-tW4e+QETPSykMEosahs68VeagToqWWe4ZUQN49gpHHM=",
-    "version": "4.0.3"
+    "rev": "v4.0.4",
+    "vendorHash": "sha256-k7aW5ZD6pAtdT6tTXy8YaJlFS5WR5FzPd9eINgPBYJM=",
+    "version": "4.0.4"
   },
   "triton": {
     "deleteVendor": true,
diff --git a/pkgs/applications/networking/cluster/terraform/default.nix b/pkgs/applications/networking/cluster/terraform/default.nix
index 77939cfe42849..6614669518094 100644
--- a/pkgs/applications/networking/cluster/terraform/default.nix
+++ b/pkgs/applications/networking/cluster/terraform/default.nix
@@ -168,9 +168,9 @@ rec {
   mkTerraform = attrs: pluggable (generic attrs);
 
   terraform_1 = mkTerraform {
-    version = "1.3.3";
-    sha256 = "sha256-Oqswfw/ZkBJKldRd916Jfaugz66C3wE8VU44kAkGmUA=";
-    vendorSha256 = "sha256-mXCtgB1MdMP2XlJBagaDtZURw5o0JudAB2koHmfM0f8=";
+    version = "1.3.4";
+    sha256 = "sha256-UaMZTBmaLHbW1mNjDrMQSPMLKRIADlVvyP2qwuAv2Zo=";
+    vendorSha256 = "sha256-Wwf2EcqtlNqcGijR8WWcdSsayJrbZO68JEBPKWHXHuw=";
     patches = [ ./provider-path-0_15.patch ];
     passthru = {
       inherit plugins;
diff --git a/pkgs/applications/networking/cluster/tfswitch/default.nix b/pkgs/applications/networking/cluster/tfswitch/default.nix
index 9449c5931b4c9..8719ebebb7681 100644
--- a/pkgs/applications/networking/cluster/tfswitch/default.nix
+++ b/pkgs/applications/networking/cluster/tfswitch/default.nix
@@ -1,13 +1,13 @@
 { buildGoModule, lib, fetchFromGitHub }:
 buildGoModule rec {
   pname = "tfswitch";
-  version = "0.13.1288";
+  version = "0.13.1300";
 
   src = fetchFromGitHub {
     owner = "warrensbox";
     repo = "terraform-switcher";
     rev = version;
-    sha256 = "sha256-nGFIzYThcuWpcwUahwMPIURubXpOj+ygoDbSnNYkACI=";
+    sha256 = "sha256-btvoFllCfwQJNpRWdAB05Cu4JYmT1xynJxDbzO/6LDs=";
   };
 
   vendorSha256 = "sha256-NX+vzI/Fa/n9ZQjpESes4fNVAmKlA1rqPwSKsL2GEUY=";
diff --git a/pkgs/applications/networking/flexget/default.nix b/pkgs/applications/networking/flexget/default.nix
index 8e1ae2528a658..a469287ed4d01 100644
--- a/pkgs/applications/networking/flexget/default.nix
+++ b/pkgs/applications/networking/flexget/default.nix
@@ -5,14 +5,14 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "flexget";
-  version = "3.4.1";
+  version = "3.4.2";
 
   # Fetch from GitHub in order to use `requirements.in`
   src = fetchFromGitHub {
     owner = "flexget";
     repo = "flexget";
     rev = "refs/tags/v${version}";
-    hash = "sha256-OfRbkMIqusfiHyBPnPnbOPwYo7lF5bg46MEM8V5nGq4=";
+    hash = "sha256-mq1xk27mIB1iiCphwMZRVqlIRwlYHihXSowQ9GAkR1U=";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/networking/gmailctl/default.nix b/pkgs/applications/networking/gmailctl/default.nix
index be26e31c7e39b..cce2b739e1001 100644
--- a/pkgs/applications/networking/gmailctl/default.nix
+++ b/pkgs/applications/networking/gmailctl/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "gmailctl";
-  version = "0.10.5";
+  version = "0.10.6";
 
   src = fetchFromGitHub {
     owner = "mbrt";
     repo = "gmailctl";
     rev = "v${version}";
-    sha256 = "sha256-H1Nuu/T55e5zWUmofKoyVSA4TaJBdK+JeZtw+G/sC54=";
+    sha256 = "sha256-OpRkBHNWRrBhh6nGrV7dZT01xsSlbANCk+g7b8SidG0=";
   };
 
-  vendorSha256 = "sha256-ivkTtcvoH+i58iQM9T0xio0YUeMhNzDcmrCSuGFljEI=";
+  vendorSha256 = "sha256-+r0WHrKARcxW1hUY1HwAXk0X6ZQrbgBj9+GjIJV5DS0=";
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/pkgs/applications/networking/instant-messengers/discord/default.nix b/pkgs/applications/networking/instant-messengers/discord/default.nix
index cee8eafbc9c5a..f78aba44f2324 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.21";
     ptb = "0.0.34";
-    canary = "0.0.140";
+    canary = "0.0.142";
   } else {
     stable = "0.0.264";
     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-AEbjkAMeOJ48RVgbVj35Rp26klCsCsDCX+VD5u1xCM0=";
+        sha256 = "sha256-/EWJC3hFIBqwHa9z4nMWR7CpoaqYY+pvw+1vcq4F0LU=";
       };
     };
     aarch64-darwin = {
diff --git a/pkgs/applications/networking/instant-messengers/discord/linux.nix b/pkgs/applications/networking/instant-messengers/discord/linux.nix
index a6f0063efe4a0..0b246125ffe74 100644
--- a/pkgs/applications/networking/instant-messengers/discord/linux.nix
+++ b/pkgs/applications/networking/instant-messengers/discord/linux.nix
@@ -77,7 +77,6 @@ stdenv.mkDerivation rec {
     libXrender
     libXtst
     nspr
-    nss
     libxcb
     pango
     libXScrnSaver
diff --git a/pkgs/applications/networking/instant-messengers/element/element-web.nix b/pkgs/applications/networking/instant-messengers/element/element-web.nix
index 92130d3099020..3b30abbb3d6c8 100644
--- a/pkgs/applications/networking/instant-messengers/element/element-web.nix
+++ b/pkgs/applications/networking/instant-messengers/element/element-web.nix
@@ -9,6 +9,7 @@
 , fixup_yarn_lock
 , nodejs
 , jitsi-meet
+, applyPatches
 , conf ? { }
 }:
 
@@ -24,11 +25,14 @@ in stdenv.mkDerivation rec {
   pname = "element-web";
   inherit (pinData) version;
 
-  src = fetchFromGitHub {
-    owner = "vector-im";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = pinData.webSrcHash;
+  src = applyPatches {
+    src = fetchFromGitHub {
+      owner = "vector-im";
+      repo = pname;
+      rev = "v${version}";
+      sha256 = pinData.webSrcHash;
+    };
+    patches = [ ./regenerate-element-web-yarn.lock.diff ];
   };
 
   offlineCache = fetchYarnDeps {
diff --git a/pkgs/applications/networking/instant-messengers/element/pin.json b/pkgs/applications/networking/instant-messengers/element/pin.json
index f5f38124ceb61..2ba1fbaf4f8e5 100644
--- a/pkgs/applications/networking/instant-messengers/element/pin.json
+++ b/pkgs/applications/networking/instant-messengers/element/pin.json
@@ -1,7 +1,7 @@
 {
-  "version": "1.11.10",
-  "desktopSrcHash": "cywTZ5OgKaFkHh3i3KLfb8HH8ZlIAOY3Xn2WHyY0fNM=",
-  "desktopYarnHash": "1xwnw9hbbrr72xs2d43qwhbmhfk3w4z80cipyrmdj5y248y8sz84",
-  "webSrcHash": "r7WZUWgPDEBS9xpc1YmmPVGch7B2ouJOFAoKdcC/55Q=",
-  "webYarnHash": "0s8wxf13jc9x4zykhm4abgq3a38mjya7z43kjsags1fxhilf09bc"
+  "version": "1.11.12",
+  "desktopSrcHash": "85mH9y3/IlThrdZY4Nv6iZQ8SxVGoYcZ1bbkCuAAroU=",
+  "desktopYarnHash": "1scp9y2lmah3n20f1kpc9paspd3qgslg129diis7g11cz4h0wyi5",
+  "webSrcHash": "MfiPrTw7BFLFPbm6xR5QbQHNPYpaJBtZES6KjISMTeE=",
+  "webYarnHash": "sha256-KZNBocVEs3wD5020h6C4n2jgp4shv4IgFENSi87rUFM="
 }
diff --git a/pkgs/applications/networking/instant-messengers/element/regenerate-element-web-yarn.lock.diff b/pkgs/applications/networking/instant-messengers/element/regenerate-element-web-yarn.lock.diff
new file mode 100644
index 0000000000000..98a39f9924707
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/element/regenerate-element-web-yarn.lock.diff
@@ -0,0 +1,32 @@
+diff --git a/yarn.lock b/yarn.lock
+index 1581f599f..910764c86 100644
+--- a/yarn.lock
++++ b/yarn.lock
+@@ -3150,6 +3150,11 @@ brorand@^1.0.1, brorand@^1.1.0:
+   resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f"
+   integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==
+ 
++browser-request@^0.3.3:
++  version "0.3.3"
++  resolved "https://registry.yarnpkg.com/browser-request/-/browser-request-0.3.3.tgz#9ece5b5aca89a29932242e18bf933def9876cc17"
++  integrity sha512-YyNI4qJJ+piQG6MMEuo7J3Bzaqssufx04zpEKYfSrl/1Op59HWali9zMtBpXnkmqMcOuWJPZvudrm9wISmnCbg==
++
+ browserify-aes@^1.0.0, browserify-aes@^1.0.4:
+   version "1.2.0"
+   resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48"
+@@ -8177,7 +8182,6 @@ matrix-js-sdk@21.0.0:
+   dependencies:
+     "@babel/runtime" "^7.12.5"
+     another-json "^0.2.0"
+-    browser-request "^0.3.3"
+     bs58 "^5.0.0"
+     content-type "^1.0.4"
+     loglevel "^1.7.1"
+@@ -8208,7 +8212,6 @@ matrix-react-sdk@3.59.0:
+     "@types/ua-parser-js" "^0.7.36"
+     await-lock "^2.1.0"
+     blurhash "^1.1.3"
+-    browser-request "^0.3.3"
+     cheerio "^1.0.0-rc.9"
+     classnames "^2.2.6"
+     commonmark "^0.29.3"
diff --git a/pkgs/applications/networking/instant-messengers/element/update.sh b/pkgs/applications/networking/instant-messengers/element/update.sh
index 976b6cb0ba8fc..b02e1d022393e 100755
--- a/pkgs/applications/networking/instant-messengers/element/update.sh
+++ b/pkgs/applications/networking/instant-messengers/element/update.sh
@@ -1,6 +1,9 @@
 #!/usr/bin/env nix-shell
 #!nix-shell -I nixpkgs=../../../../../ -i bash -p nix wget prefetch-yarn-deps nix-prefetch-github
 
+# FIXME should fix itself on the next release -> remove the warning if that's the case
+echo "WARNING: on the last update, the yarn.lock had to be patched. Please be careful when updating the hashes!"
+
 if [ "$#" -gt 1 ] || [[ "$1" == -* ]]; then
   echo "Regenerates packaging data for the element packages."
   echo "Usage: $0 [git release tag]"
diff --git a/pkgs/applications/networking/instant-messengers/feishu/default.nix b/pkgs/applications/networking/instant-messengers/feishu/default.nix
index a13f161d41947..0102476954eca 100644
--- a/pkgs/applications/networking/instant-messengers/feishu/default.nix
+++ b/pkgs/applications/networking/instant-messengers/feishu/default.nix
@@ -84,6 +84,7 @@ stdenv.mkDerivation rec {
     cups
     libXdamage
     libdrm
+    libgcrypt
     libxshmfence
     mesa
     nspr
diff --git a/pkgs/applications/networking/instant-messengers/gurk-rs/default.nix b/pkgs/applications/networking/instant-messengers/gurk-rs/default.nix
index 924a918ebceb6..e518590a91672 100644
--- a/pkgs/applications/networking/instant-messengers/gurk-rs/default.nix
+++ b/pkgs/applications/networking/instant-messengers/gurk-rs/default.nix
@@ -7,16 +7,20 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "gurk-rs";
-  version = "0.2.4";
+  version = "0.2.5";
 
   src = fetchFromGitHub {
     owner = "boxdot";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-WZUoUvu7GaiBOaRAOGRCXrLe6u3DRbI6CDTAf5jryGc=";
+    sha256 = "sha256-CEsnZ0V85eOH+bjtico5yo9kS6eMT7Dx3H6wiDUjQm4=";
   };
 
-  cargoHash = "sha256-81ZW61JX40W0D/cmYogR3RJH2dvEKW1K7sIsl2io/7E=";
+  postPatch = ''
+    rm .cargo/config.toml
+  '';
+
+  cargoHash = "sha256-z+2G/hD1zYOoJrYFB0eEP6y9MoV2OfdkJVt6je94EkU=";
   buildInputs = [ protobuf ];
 
   PROTOC = "${protobuf}/bin/protoc";
diff --git a/pkgs/applications/networking/instant-messengers/jami/client-qt.nix b/pkgs/applications/networking/instant-messengers/jami/client-qt.nix
index 840606bf19a92..7733b05168b61 100644
--- a/pkgs/applications/networking/instant-messengers/jami/client-qt.nix
+++ b/pkgs/applications/networking/instant-messengers/jami/client-qt.nix
@@ -21,7 +21,7 @@
 , qtsvg
 , qtwebengine
 , qtwebchannel
-, withWebengine ? false
+, withWebengine ? true
 }:
 
 stdenv.mkDerivation {
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
 
   preConfigure = ''
     python gen-resources.py
-    echo 'const char VERSION_STRING[] = "${version}";' > src/version.h
+    echo 'const char VERSION_STRING[] = "${version}";' > src/app/version.h
   '';
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/instant-messengers/jami/default.nix b/pkgs/applications/networking/instant-messengers/jami/default.nix
index 5982b9b0dded0..a2d53141f413d 100644
--- a/pkgs/applications/networking/instant-messengers/jami/default.nix
+++ b/pkgs/applications/networking/instant-messengers/jami/default.nix
@@ -3,7 +3,7 @@
 , callPackage
 , fetchFromGitHub
 , fetchzip
-, ffmpeg_4
+, ffmpeg
 , pjsip
 , opendht
 , jack
@@ -12,11 +12,11 @@
 }:
 
 let
-  version = "20220726.1515.da8d1da";
+  version = "20220825.0828.c10f01f";
 
   src = fetchzip {
     url = "https://dl.jami.net/release/tarballs/jami_${version}.tar.gz";
-    hash = "sha256-yK+xo+YpNYmmWyNAE31hiL6HLvDdEFkm8FO6LQmPCL0=";
+    hash = "sha256-axQYU7+kOFE9SnI8fR4F6NFvD9ITZ85UJhg5OVniSlg=";
 
     stripRoot = false;
     postFetch = ''
@@ -40,7 +40,12 @@ let
   readLinesToList = with builtins; file: filter (s: isString s && stringLength s > 0) (split "\n" (readFile file));
 in
 rec {
-  ffmpeg-jami = ffmpeg_4.overrideAttrs (old:
+  ffmpeg-jami = (ffmpeg.override rec {
+    version = "5.0.1";
+    branch = version;
+    sha256 = "sha256-KN8z1AChwcGyDQepkZeAmjuI73ZfXwfcH/Bn+sZMWdY=";
+    doCheck = false;
+  }).overrideAttrs (old:
     let
       patch-src = src + "/daemon/contrib/src/ffmpeg/";
     in
@@ -51,10 +56,6 @@ rec {
         ++ lib.optionals stdenv.isLinux (readLinesToList ./config/ffmpeg_args_linux)
         ++ lib.optionals (stdenv.isx86_32 || stdenv.isx86_64) (readLinesToList ./config/ffmpeg_args_x86);
       outputs = [ "out" "doc" ];
-      meta = old.meta // {
-        # undefined reference to `ff_nlmeans_init_aarch64'
-        broken = stdenv.isAarch64;
-      };
     });
 
   pjsip-jami = pjsip.overrideAttrs (old:
@@ -62,23 +63,19 @@ rec {
       patch-src = src + "/daemon/contrib/src/pjproject/";
     in
     rec {
-      version = "4af5d666d18837abaac94c8ec6bfc84984dcf1e2";
+      version = "513a3f14c44b2c2652f9219ec20dea64b236b713";
 
       src = fetchFromGitHub {
         owner = "savoirfairelinux";
         repo = "pjproject";
         rev = version;
-        sha256 = "sha256-ENRfQh/HCXqInTV0tu8tGQO7+vTbST6XXpptERXMACE=";
+        sha256 = "sha256-93AlJGMnlzJMrJquelpHQQKjhEgfpTFXTMqkBnm87u8=";
       };
 
       patches = (map (x: patch-src + x) (readLinesToList ./config/pjsip_patches));
 
       configureFlags = (readLinesToList ./config/pjsip_args_common)
         ++ lib.optionals stdenv.isLinux (readLinesToList ./config/pjsip_args_linux);
-
-      meta = {
-        knownVulnerabilities = [ "CVE-2022-39269" "CVE-2022-39244" ];
-      } // old.meta;
     });
 
   opendht-jami = opendht.override {
diff --git a/pkgs/applications/networking/instant-messengers/jami/update.sh b/pkgs/applications/networking/instant-messengers/jami/update.sh
index abc7728e0703f..27472d568c28b 100755
--- a/pkgs/applications/networking/instant-messengers/jami/update.sh
+++ b/pkgs/applications/networking/instant-messengers/jami/update.sh
@@ -13,7 +13,7 @@ echo "Latest version: ${version}"
 
 update-source-version jami-daemon "$version" --file=$jami_dir/default.nix
 
-src=$(nix-build --no-out-link -A jami-libclient.src)
+src=$(nix-build --no-out-link -A jami-daemon.src)
 
 config_dir="$jami_dir/config"
 mkdir -p $config_dir
@@ -47,7 +47,7 @@ echo "${pjsip_patches}" > "$config_dir/pjsip_patches"
 
 # Update pjsip version
 pjsip_version=$(sed -n -E 's/.*PJPROJECT_VERSION := ([0-9a-f]+).*/\1/p' ${src}/daemon/contrib/src/pjproject/rules.mak)
-update-source-version jami-daemon.pjsip "$pjsip_version" --file=pkgs/applications/networking/instant-messengers/jami/daemon.nix
+update-source-version jami.pjsip-jami "$pjsip_version" --file=$jami_dir/default.nix
 
 pjsip_rules="${src}/daemon/contrib/src/pjproject/rules.mak"
 
diff --git a/pkgs/applications/networking/instant-messengers/session-desktop/default.nix b/pkgs/applications/networking/instant-messengers/session-desktop/default.nix
index 755c23a61f0b4..6d2d79c6c7a2f 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.1";
+  version = "1.10.3";
   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-DArIq5bxyeHy45ZkE+FIpxBl4P6jiHTCN1lVCuF81O8=";
+    sha256 = "sha256-I9YyzfI8EqH8LZe5E5BnD9lGPAdQo++l3yRClfN7+pY=";
   };
   appimage = appimageTools.wrapType2 {
     inherit version pname src;
diff --git a/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix b/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
index ec33f99809ef6..d9fcbc26380ee 100644
--- a/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
+++ b/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
@@ -110,11 +110,11 @@ in stdenv.mkDerivation {
 
     # Fix the desktop link
     substituteInPlace $out/share/applications/skypeforlinux.desktop \
-      --replace /usr/bin/ $out/bin/
+      --replace /usr/bin/ ""
     substituteInPlace $out/share/applications/skypeforlinux-share.desktop \
-      --replace /usr/bin/ $out/bin/
+      --replace /usr/bin/ ""
     substituteInPlace $out/share/kservices5/ServiceMenus/skypeforlinux.desktop \
-      --replace /usr/bin/ $out/bin/
+      --replace /usr/bin/ ""
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/networking/instant-messengers/webex/default.nix b/pkgs/applications/networking/instant-messengers/webex/default.nix
index cee02cf32dba7..f28cc3c25f6ea 100644
--- a/pkgs/applications/networking/instant-messengers/webex/default.nix
+++ b/pkgs/applications/networking/instant-messengers/webex/default.nix
@@ -25,6 +25,7 @@
 , udev
 , libxcb
 , libxkbcommon
+, libxcrypt
 , lshw
 , mesa
 , nspr
@@ -54,11 +55,11 @@
 
 stdenv.mkDerivation rec {
   pname = "webex";
-  version = "42.7.0.22904";
+  version = "42.10.0.24000";
 
   src = fetchurl {
-    url = "https://binaries.webex.com/WebexDesktop-Ubuntu-Gold/20220907184519/Webex_ubuntu.7z";
-    sha256 = "731ec24d95243171649213b19a1709bef98846fd631f54a27d11fe16ebcc7d33";
+    url = "https://binaries.webex.com/WebexDesktop-Ubuntu-Gold/20221019145240/Webex_ubuntu.7z";
+    sha256 = "03b77a3fcce76f04cf684bcdecb3bcce97c5a8b6cc36b40967cc14fa9a46c102";
   };
 
   buildInputs = [
@@ -91,6 +92,7 @@ stdenv.mkDerivation rec {
     udev
     libxcb
     libxkbcommon
+    libxcrypt
     libX11
     libXcomposite
     libXcursor
diff --git a/pkgs/applications/networking/irc/irssi/default.nix b/pkgs/applications/networking/irc/irssi/default.nix
index b04cd2e07aabb..f9563313f2fba 100644
--- a/pkgs/applications/networking/irc/irssi/default.nix
+++ b/pkgs/applications/networking/irc/irssi/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "irssi";
-  version = "1.4.2";
+  version = "1.4.3";
 
   src = fetchFromGitHub {
     owner = "irssi";
     repo = "irssi";
     rev = version;
-    hash = "sha256-dQZ/CeBfcfWGjKPF3fR62JDqyEXGv5hd9VT4OEbgJhQ=";
+    hash = "sha256-wRJp4KfI+2IAJ70XW7+0LR83cRvS/SGq7CpDVuc636Q=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/maestral-qt/default.nix b/pkgs/applications/networking/maestral-qt/default.nix
index 059a4585c7d3d..1be323decab42 100644
--- a/pkgs/applications/networking/maestral-qt/default.nix
+++ b/pkgs/applications/networking/maestral-qt/default.nix
@@ -1,63 +1,50 @@
 { lib
 , fetchFromGitHub
 , python3
-, wrapQtAppsHook
+, qt6
 , nixosTests
 }:
 
-let
-  inherit (pypkgs) makePythonPath;
-
-  pypkgs = (python3.override {
-    packageOverrides = self: super: {
-      # Use last available version of maestral that still supports PyQt5
-      # Remove this override when PyQt6 is available
-      maestral = super.maestral.overridePythonAttrs (old: rec {
-        version = "1.5.3";
-        src = fetchFromGitHub {
-          owner = "SamSchott";
-          repo = "maestral";
-          rev = "refs/tags/v${version}";
-          hash = "sha256-Uo3vcYez2qSq162SSKjoCkwygwR5awzDceIq8/h3dao=";
-        };
-      });
-    };
-  }).pkgs;
-
-in
-pypkgs.buildPythonApplication rec {
+python3.pkgs.buildPythonApplication rec {
   pname = "maestral-qt";
-  version = "1.5.3";
-  disabled = pypkgs.pythonOlder "3.6";
+  version = "1.6.3";
+  disabled = python3.pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "SamSchott";
     repo = "maestral-qt";
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-zaG9Zwz9S/SVb7xDa7eXkjLNt1BhA1cQ3I18rVt+8uQ=";
+    sha256 = "sha256-Fvr5WhrhxPBeAMsrVj/frg01qgt2SeWgrRJYgBxRFHc=";
   };
 
   format = "pyproject";
 
-  propagatedBuildInputs = with pypkgs; [
+  propagatedBuildInputs = with python3.pkgs; [
     click
     markdown2
     maestral
     packaging
-    pyqt5
-  ] ++ lib.optionals (pythonOlder "3.9") [
-    importlib-resources
+    pyqt6
+  ];
+
+  buildInputs = [
+    qt6.qtbase
+    qt6.qtsvg  # Needed for the systray icon
+  ];
+
+  nativeBuildInputs = [
+    qt6.wrapQtAppsHook
   ];
 
-  nativeBuildInputs = [ wrapQtAppsHook ];
+  dontWrapQtApps = true;
 
-  makeWrapperArgs = [
+  makeWrapperArgs = with python3.pkgs; [
     # Firstly, add all necessary QT variables
     "\${qtWrapperArgs[@]}"
 
     # Add the installed directories to the python path so the daemon can find them
-    "--prefix PYTHONPATH : ${makePythonPath (pypkgs.requiredPythonModules pypkgs.maestral.propagatedBuildInputs)}"
-    "--prefix PYTHONPATH : ${makePythonPath [ pypkgs.maestral ]}"
+    "--prefix PYTHONPATH : ${makePythonPath (requiredPythonModules maestral.propagatedBuildInputs)}"
+    "--prefix PYTHONPATH : ${makePythonPath [ maestral ]}"
   ];
 
   # no tests
diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix b/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
index 94fcb7cdddb1f..34fa9826bcb6e 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
@@ -1,665 +1,665 @@
 {
-  version = "102.4.0";
+  version = "102.4.1";
   sources = [
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/af/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/af/thunderbird-102.4.1.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha256 = "93c9dccd3f4a81610d91f4388d0f84d91cd9e8c55458dc2992f510ed07744780";
+      sha256 = "08073df6cdbe071c3386b889ddc6f3023847528065c6e02a596ce376553eacb6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/ar/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/ar/thunderbird-102.4.1.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha256 = "f3693cbc8d7c8eaec41a6498660686a94b7c7ac541cf65193385bbc090b080c1";
+      sha256 = "1c1db09f3b666911328080dc0f7b3c3dbc6fe06011a0851edf9ae50ecabc3724";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/ast/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/ast/thunderbird-102.4.1.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha256 = "324d925d6c6b5a0e46123b0a4bfee932dc01a1e91df0b0f0d88a5159c87909ab";
+      sha256 = "4df7f18fe166460d42e6a3a9755ceeca2935152603255810fe8bf32a828b9a26";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/be/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/be/thunderbird-102.4.1.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha256 = "e89053d47291e001b60e76f01ce56c01e180a7785b3e8a80b30e85eddfcabddc";
+      sha256 = "d0c81fcea6f33749b51465428c7469aa34711013b46241543ccd5c5168523740";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/bg/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/bg/thunderbird-102.4.1.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha256 = "ebd61de1626f18fb3c4296f4a3e546064e280cffd1290fe95049adaa942453e7";
+      sha256 = "d6ffdda120ae73ab82bfef6647ee7b4ba81c3c0cb890d1fc5e5ef4c9ef739cec";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/br/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/br/thunderbird-102.4.1.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha256 = "50c6ed53eb3e8db065562b4ec3d2e780385364426133fa5204141a93d7d6c400";
+      sha256 = "b1d6890f43cd5fe4c85fbf14cc9455dcaafe1f17a187e843017938357610595c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/ca/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/ca/thunderbird-102.4.1.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha256 = "9c500fae332cfd1140547da498d8d5c5798a00e9fbf8036da1cc69f8f30974d4";
+      sha256 = "616261967c700a01fa4f018723fefdddd3264ea4e96e33bfd88fac419fd2ee1c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/cak/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/cak/thunderbird-102.4.1.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha256 = "cb21ff9e839c092bf7b15dc033af66d7e0817ebccb54a93ad20a485cf2ef017d";
+      sha256 = "a9384ad2644dc1fe5e6a152d519c3644701ef48c6dcff1c107f30763ed2e79f4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/cs/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/cs/thunderbird-102.4.1.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha256 = "82718115f0cbf0f609c465a9399a5947292a0ae81234802b163ec362c3d1b7b2";
+      sha256 = "59d99c6e4f1cae756356ec85d71d0dad534ca32922dd13ee8766c24dd0a24197";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/cy/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/cy/thunderbird-102.4.1.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha256 = "25e7f01c83e17b7181776430308fe39bf914d0da2d8a2e8351a8a2f45c791b50";
+      sha256 = "acf84ee8bc408c44766533c75c4d56fce9b85a09c19e5c50cbc5fba535462e01";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/da/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/da/thunderbird-102.4.1.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha256 = "0f7c6940092081ed29ca4ed1f3b83a8dcab040e08a09822f079a7273f04494f9";
+      sha256 = "e8ae4e045e54f2f242e598b67cd95dfecb54d23167a28871249b667814f68b9f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/de/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/de/thunderbird-102.4.1.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha256 = "3e1c3235af50d99f6de0815a10465e57377fc51de0ab76b923c9a9b804c3a94e";
+      sha256 = "3f8417b4ce6403892145e8b9a4c8fb0113c83b252f05af721be3c9d090923d97";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/dsb/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/dsb/thunderbird-102.4.1.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha256 = "bc7d3206e6b1fe2ccf151fad27c7b34f42a2d2b3cc36c1505ee3f47bf94de247";
+      sha256 = "293dd78f61b56be58c38ea18ece6f680d9255427d2169ee9e40cc4acd1518d87";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/el/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/el/thunderbird-102.4.1.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha256 = "70abfc1e011a2901e7639e7ebfb01ac06f18732b10f2e640e5c1dbbcef3e0e6f";
+      sha256 = "f105f81e72a937312d11d453cd293275770c21f4bfb873ddf486f8fa6fcb9770";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/en-CA/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/en-CA/thunderbird-102.4.1.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha256 = "82e8043502072528c4bdd5e267cd6d581fbeaaa125cd74977461eae1bf1da861";
+      sha256 = "18299fbdd4c800b8a460d423f024f273a3dd30a3af9f53c8556ad861f69f44e4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/en-GB/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/en-GB/thunderbird-102.4.1.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha256 = "707608d9c55c073522071732cd0541a04bb7b7b0d3bff6fa35fd2307e0320ae1";
+      sha256 = "9553a14d31accd87a7dcbe7ecb19c03c558d0d98a6421335fefa6035cd36055a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/en-US/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/en-US/thunderbird-102.4.1.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha256 = "52c80623976ea2e62a52b5b62f741450e684c07e0fce72fbb5218dcadce9b4da";
+      sha256 = "45c4f16f243d563eca70be66cacd8a92931e143b6ccd4b88e1592f6918a16050";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/es-AR/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/es-AR/thunderbird-102.4.1.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha256 = "09ca8111a3c0792591515f4e7abc090148b28e2bef7e0c591c3f0eb15fa0b8d7";
+      sha256 = "8cb47779ed6d146a165375e75c3e399421cf625ed96459e62cf66df0ac1c5632";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/es-ES/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/es-ES/thunderbird-102.4.1.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha256 = "923d07aeb9bccf7ae42baca048bd8222cccc31ffde1f090675df8df715aed21e";
+      sha256 = "ad2dbb613a14569709f4a45efe4e4a1bc95c048334e60313b470779b301ad24a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/es-MX/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/es-MX/thunderbird-102.4.1.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha256 = "6f03c99fbfab67d593c94f9d12f104385208040229eb403eb51472df1442aa8c";
+      sha256 = "92d4f904bc0448eebcb282c154b8fac2fb440e18d33efad39e1158b632d141bb";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/et/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/et/thunderbird-102.4.1.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha256 = "db864bbb22fadcdb7419565523318f97e4e57a25fe11429e27fffaf353df4a36";
+      sha256 = "0de025d42b2e832ee750bfedde7042ca33b06eda72daadd4f253fa7694151815";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/eu/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/eu/thunderbird-102.4.1.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha256 = "e25a04af4f402075575e1ebbc5f9a74a9de008ff303fdc13fd916c55349a83ff";
+      sha256 = "73b78650bdf5cc4c7ffd749d65e7981497501b14f722daade518dbe47a4cf0fc";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/fi/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/fi/thunderbird-102.4.1.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha256 = "73b8cf72eb9a34149eaf0961ce1fd7a29f46c65f5a806c451f0736c2d2b2dec2";
+      sha256 = "3c3ec6c58005559519493a15c1cc68b03a4d5d8dc2f53f43f7d7ba6be838f962";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/fr/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/fr/thunderbird-102.4.1.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha256 = "6bcc2d614ed0b83a8b015e3c39412d4df8de2e862d0615d6093aa826fafe0773";
+      sha256 = "ea221972a549c82ab7f13c6ec891edf7d1bfcc96cbb41650bf67e781bb22f3b7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/fy-NL/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/fy-NL/thunderbird-102.4.1.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha256 = "abbf802853ee2035d886971d3cad73124a79e78f1aa543db9ab8602a41144bb9";
+      sha256 = "e858beb5d5f4766d8d3b71d9ddd911bc2193e542237e38919e230659c192830c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/ga-IE/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/ga-IE/thunderbird-102.4.1.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha256 = "e4d9452a2c59c7f06b6851c2549b9f65a41d7ea4f059c05c793fb163ef5bb8ea";
+      sha256 = "f92a5030d465d70caea048d27820a31941b5e37fbd78d589fa19aaf24dce7e66";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/gd/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/gd/thunderbird-102.4.1.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha256 = "b08c04011f0de20025632e4a29a13b0d5f6296ec46e35c02e37a74ab4abfb8e7";
+      sha256 = "f076f07c58b67bb6463dcac79d6a458cebda1d6a3d17ec8adcc8bdd102207ff7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/gl/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/gl/thunderbird-102.4.1.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha256 = "f9d326962e33c93d351392d88897aa2f1e4c3a545c9b8e646e931fe950872cbc";
+      sha256 = "cafcb519043c5f4895a08c19d942204c24488c3cee1f02290fe686b524ba4976";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/he/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/he/thunderbird-102.4.1.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha256 = "8bd8e26d383aadc97dbb4485a8644b3f49068f3772a669c2ec3c0df87f2ebcdf";
+      sha256 = "d337901a548cd409282f597624ff4231c843a775fa56ba468f976227cb34c51a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/hr/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/hr/thunderbird-102.4.1.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha256 = "c234210e83dccc3562ffd3cb50b37d8924a1145d5dff1db4a6a404f67da0b656";
+      sha256 = "d606d6d81645d66f466e9d6b494922dcd6259aff72b268bbc7ee8a917bada0ef";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/hsb/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/hsb/thunderbird-102.4.1.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha256 = "ed513858dae38683768b0a3839b20f800011fc8817b28e09f31301f614b4f2cd";
+      sha256 = "2bbbb19b7abbeea16ca2e09937a622442da448b32f1fd80cf74a14a2218fa990";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/hu/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/hu/thunderbird-102.4.1.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha256 = "5c7b48aee0a7b843b709bc614f83d814cafaebe343dececbcf7f66c858df47f5";
+      sha256 = "1e9e283bb54336eb182262773d490f8097b00c224dc4c9c97077c7921411ac14";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/hy-AM/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/hy-AM/thunderbird-102.4.1.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha256 = "84fcbc6317d1fd543283528d5bfd899bdfe8a7d54cc3ccde12fbf36054976808";
+      sha256 = "aacd3c2286c571399678e5f37650382f8c16d98fbcad1085e61314d7fa501716";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/id/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/id/thunderbird-102.4.1.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha256 = "53d7c3aa54a0a53eba05ad0281bbf48a05747699e8d5c874e0a31fe7e34d53aa";
+      sha256 = "d3e5f61effbe3ad52a054fc59905ecf857935d20642b8efb7d0d43c7dfd15141";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/is/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/is/thunderbird-102.4.1.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha256 = "b9f313d350c687c04c74d0fce3ec898553a1c91650668a7d7dbf02e53b27847b";
+      sha256 = "9e58e251f4845b93e25fc0cbcd52a913747cc4e7f0cc71d5ba0fff9f4a193020";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/it/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/it/thunderbird-102.4.1.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha256 = "637b1c3a60cbf3edaa65e29b602067b0ca37a4da6434c266ed2a60eae239a6be";
+      sha256 = "c128eb6aa3d32a1b53ca9e022b033137281d362404536ea8cbe8fbbde208389d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/ja/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/ja/thunderbird-102.4.1.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha256 = "b42908e1920cdac0fc5e1e3645f4e92e2ae891ce0ffb117d2e0db502f1ba10cf";
+      sha256 = "4d3600bb1a618e0add841bb1e0f6afd4d25963ea317204eb015a2692996307ca";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/ka/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/ka/thunderbird-102.4.1.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha256 = "622fcb7991199de7de373b894622290e4e7f2245ab6f8869d23512c02c3c9949";
+      sha256 = "a8af3f899683a50f1f2aaf8ec4190c6367edd1282216bd9a8a8073b3ede0f5dd";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/kab/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/kab/thunderbird-102.4.1.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha256 = "fd3f03b334466df26e24d390027ab215e46d45bfe8cf6b1b87c6025b55426364";
+      sha256 = "2d24b25375add713bc46dd400a2c8eb34228ddfc78e14ec388cbeee42f84a592";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/kk/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/kk/thunderbird-102.4.1.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha256 = "9aa0af8d48eaf1c2f0111f2d4a57b46c8fd4b365f307b30cf6f0865440fde217";
+      sha256 = "a77b99661316fcb7072d85c20924a5df246328d49b5c760967ce9217cf9a3e31";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/ko/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/ko/thunderbird-102.4.1.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha256 = "da990d20167bcacc2e8ed9083f905c9b0b6cde1a7994f557865304a322be1dae";
+      sha256 = "f2c086cb766718cc9780f3b0a6e101c5af4bcff4bea71f7dcff8a4ce233dca37";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/lt/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/lt/thunderbird-102.4.1.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha256 = "468590ba13345d76ad511122a423080c789c39b8993a613be0706678d1174d70";
+      sha256 = "105148d01371f2c302fe3e275b5d23d31365d844e368e761eac5dff8d91e426b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/lv/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/lv/thunderbird-102.4.1.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha256 = "66ee93518731d5364ed70a49688b672b485cc77e0b2111f18905a21425ee319b";
+      sha256 = "b905760d84f3a2df91ee1d9ede23cad1fe354f14d5623e97cf766f8e6b42943e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/ms/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/ms/thunderbird-102.4.1.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha256 = "ceed80f3eed734a3e7af87bff1f03862d7ded388484ea8cecf2873c91dcee225";
+      sha256 = "95e9955220bbddf8a5b890ebd6dc783a19a7a9c2b2f20fe5c09f7d7570590a45";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/nb-NO/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/nb-NO/thunderbird-102.4.1.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha256 = "01ba526dfb5d82cd6b51a30b06f47a85b81589aa3ba8e6d9d318603b083f1195";
+      sha256 = "bff46e27874a753e97f36acba4ebb0af7888a07fdc0c069e49eb34c000dac5a3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/nl/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/nl/thunderbird-102.4.1.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha256 = "d6f315e1168d6a5433a724e6bf3160e0089ce26abb929187b122f44e46c84652";
+      sha256 = "0fe3f1a9490dfc81e13f199f91829e7eb22a8e8f1f660561029ccc093db5bc44";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/nn-NO/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/nn-NO/thunderbird-102.4.1.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha256 = "f9a3195807f753f8cb7bfaffc2e1d647f79dd7afa31fe85f94d2438c08e93ffe";
+      sha256 = "deee98fd0fb6be6c2974c54112e170a247336fe1e58d1e63c382b6be02a002cd";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/pa-IN/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/pa-IN/thunderbird-102.4.1.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha256 = "f68b60dc2d946bcff7a03ce781c77c17e68aff2e376bc6e9c84ed2be14e17b33";
+      sha256 = "c7f3f847b96ce57ab79ea2d1e27b9525beb4218cb9747453b558def01fb367dd";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/pl/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/pl/thunderbird-102.4.1.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha256 = "94d24fd3d184cb8d46e584599b8cf43462c38a2113a24921c03bdec391b74ccd";
+      sha256 = "a7058bf0ae48d4be0369dae1f1f006f78a0e5e914c92e3dbd86ccafeac9d0384";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/pt-BR/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/pt-BR/thunderbird-102.4.1.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha256 = "93f73967bd35eef0ad9bc820e07d8f8eb458ffa9415bc9f1e08c9ac9e3de876e";
+      sha256 = "98c8bdff3e4747849a9dccf0c43292e85cddb67a8c21dd450fff693c7fa722ac";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/pt-PT/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/pt-PT/thunderbird-102.4.1.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha256 = "e08033d393fd804504b41fbcf9e902dd3ea262a3c9346bfb89e101a7acdb1478";
+      sha256 = "07271ac0c4cdbf7bed8a57c440b581321cd34c6345332bc12c8ee1739091c6e6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/rm/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/rm/thunderbird-102.4.1.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha256 = "04b46b74a949e5803e68dd243c16e77d6fad91997c105d1b670f553c3eff66aa";
+      sha256 = "46343d73ce9854103c67aee2497af8ed2fa0e727f8fc1516f9a53389c1fb825a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/ro/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/ro/thunderbird-102.4.1.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha256 = "d9d8556c0c330cefda91804fc534a5443e2fc787c83d58fcf9455f6215608c0d";
+      sha256 = "3ef064c0e8d29ab43b8f4eb6457532d00c08f494a0780139751a2a5edf6686fb";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/ru/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/ru/thunderbird-102.4.1.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha256 = "606ddd0868b3b61cf8dd87db75da52559d6e66a9cff5fb62e521a64afccbe7b5";
+      sha256 = "e950647fb3d7cad84e2d52c37187f001b22f4526106ebb45b22a47d49c7c6569";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/sk/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/sk/thunderbird-102.4.1.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha256 = "ef94704bf009e178ffed2032cb7dbbbf5476e03cf41536796fa65e40b495f557";
+      sha256 = "75d1779f445c20b9e2d86398fe3f97ec9a994d731cdb0a7973879f32b08cb4e3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/sl/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/sl/thunderbird-102.4.1.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha256 = "6ffac67a7fa242565946a9939faaa70ae652ee70b441e71a4768316affbe80fc";
+      sha256 = "9a433ee3876e57a4d48d61b86e0ff1fd4c92aa7be6cb1275360eda50d1e9e869";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/sq/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/sq/thunderbird-102.4.1.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha256 = "9ebe4616896df6e437ca6e639ab273c6098266b72fe7946b4f1aa28f002d5198";
+      sha256 = "3a10eea6c49c7400e4c80ac4999c21acdba0ef94279e51129dd099cb3a1429a6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/sr/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/sr/thunderbird-102.4.1.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha256 = "9a8979b83e7d7e129cddd7812fef4803782aa951b190c20aa50919423a0b7127";
+      sha256 = "aee0848c3bf945586a99e0007cc54d64a3635d83f9e28b8e3541561a5e1d1cc3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/sv-SE/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/sv-SE/thunderbird-102.4.1.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha256 = "1724ae0e9fe2d92afb21d8e7440a219822920e569aec801d6b1167b51862796a";
+      sha256 = "0109d45d6398428ead4273eaf350833bbb8b467abc6e9ab4fd19020b0cdfa107";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/th/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/th/thunderbird-102.4.1.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha256 = "e767d6c6dda151370c2a04c850b8f55eec4b2326be493d16af219a9737535a9a";
+      sha256 = "7d32e7b70231d6d496d0341a8706f22eb6671327982016076dd55022f1705f1d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/tr/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/tr/thunderbird-102.4.1.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha256 = "1d1bae1f7e76a0acd5f4d51a68d9805f34b2397005234ce33ecf2b9668c1caf9";
+      sha256 = "65f7f282d4129fe26c90589fd4d408f9566ab004010a54b12399556ecb4473f0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/uk/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/uk/thunderbird-102.4.1.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha256 = "2602294d73ee0dce17960c453b0b7f188566a4b09af5c593aae4f57c13c6c6bf";
+      sha256 = "4ff7402cd57afc078851db23ba4a19d205097786451fafae356032f1e1a82296";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/uz/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/uz/thunderbird-102.4.1.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha256 = "57e424a2d1b3d58aa23b87d85cfcd6af7030ef9b539ad74beed6284051142fbf";
+      sha256 = "1d505372aee160d1c1cad1d5cf1c4805666da0b24ee8ba992ac3b72808d326f0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/vi/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/vi/thunderbird-102.4.1.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha256 = "d4f19ac4584c5523009a660f819d43e3244d552bd0b2890fa8e52fc5cf48d9de";
+      sha256 = "1c8577b45a00f1495eb498dccca5b022556e483d76a6af39989f7acec93f3270";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/zh-CN/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/zh-CN/thunderbird-102.4.1.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha256 = "204f5faee35bece1bd444d4d0a18973b13f2e05e481d77b25acd201fb8b5e2e4";
+      sha256 = "e1dee1a41cdf2e551268d43732c48823f2bb7409724ae9410d01cea3d02bc903";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-x86_64/zh-TW/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-x86_64/zh-TW/thunderbird-102.4.1.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha256 = "8aac9a823ef4df7678e93316b9e312dc84fe589de520740ed2b018d9976b823d";
+      sha256 = "0f1558f845ba2820003a18623432a2461296923e7e9a373b7811c6555998d6fc";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/af/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/af/thunderbird-102.4.1.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha256 = "5da88620d3676d21e2dd98d514f073535e6b84e9156c5c4766de7b41aba148fe";
+      sha256 = "fd83eff1f30660df048fad80a6797c88416441ef0a134a5199afe51316a37c8d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/ar/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/ar/thunderbird-102.4.1.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha256 = "3d50816819f2d0a3db242f83dab9cf269f2db5b8b74efc460976070413cfa568";
+      sha256 = "0a2f05ebd9419d68d0786f2e2302e75660c21c0045c34f312179a28f1ff16b28";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/ast/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/ast/thunderbird-102.4.1.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha256 = "fc5508c42732b470edcf1dbd6fd9e03d66f11f5976a1dc433283b19e0657e54b";
+      sha256 = "31c8a1603645756e44f23be4e4697a2dc58ea3cbe74370a3f473d049de1276b3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/be/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/be/thunderbird-102.4.1.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha256 = "4b68c8b1e7f0493ba3fcec4041bb86b88f770530b5842f1954ed65c2bff6ef91";
+      sha256 = "94466eecd618a29f5c1f0886c0a86d9ed97d554f35e81a9f15378314bc30a2f7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/bg/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/bg/thunderbird-102.4.1.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha256 = "08e8518a774d8ff6dd7fc944ef9cae66d565c3ecbea4e71cbb670575c8abf84f";
+      sha256 = "dbfdaf7aeea04c34fad89485da4546dbd47528bd5903b5f51165238c1568383c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/br/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/br/thunderbird-102.4.1.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha256 = "9df36d6165b4ff71383cf922e49dfe93e13add7426b43be79e72596517d01b64";
+      sha256 = "2f707fadf4f1b56d42123be86ea56044162c1699855016d5bee0849eb217d8b2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/ca/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/ca/thunderbird-102.4.1.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha256 = "7caa728b60f16660d40b3c714ccca559c9998268e71a3602b64319f28908f384";
+      sha256 = "94a1d06c6d62194c7a0fd07bd9e55580ff939b1a6714e82bcf4614c3a8e7b5db";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/cak/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/cak/thunderbird-102.4.1.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha256 = "f85fd60655fe7e09736c31c2451d78110fcfb329cac4c2550cda2119c48da11e";
+      sha256 = "c97a4ec5da61b6a1f95d184dd1ec0d6a53fdfbae38e4f868f2de20ba60b9e1d6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/cs/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/cs/thunderbird-102.4.1.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha256 = "14c6b188ccb93367a3ba411b3e383d3816d6b0bcf1fa1bb48025fda30f7adf4b";
+      sha256 = "3861b9df1d2f7c23beebaa192bc1c052c70d50626e87233321d208be36073584";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/cy/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/cy/thunderbird-102.4.1.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha256 = "d82b7a995b1f92170ed6ee0a2b7056aeb69922523aaf9c66ff24f435d38b45e7";
+      sha256 = "fba48b7dd7de6b7d01898e8b2b21206b7583a71cb9b76860af1ebf8cdf5ceda4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/da/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/da/thunderbird-102.4.1.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha256 = "bb6967140ecb94cea0f48f4a0f937bd6734a901d5c3f947585391908dacaf05d";
+      sha256 = "b4c662fdbcfa6e43d2f6f3c01f76c78c390ac99987b45721389859a0aba688de";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/de/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/de/thunderbird-102.4.1.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha256 = "4411fe74340c1c62b6845cd70e60c133130f4e780916f998cae5a7b103dbd1f4";
+      sha256 = "3fe043fcab6c987e59339a08844c8328fa0f6dc9f27b5e78d5f5b08183e73500";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/dsb/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/dsb/thunderbird-102.4.1.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha256 = "9badc6942ad260da94230f9b223d63cceb94cb4689090dfc8d3c6df372d70692";
+      sha256 = "2433e03b4e5a680572f88dc81665d238fd933dc11ced970fab9671cab80695f8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/el/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/el/thunderbird-102.4.1.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha256 = "c26dfdc2b5f2da4917dc18bdc92739962e2a2931cb2886c8f2f395a66c8bd841";
+      sha256 = "1cb691404d9772fe0f676a75915604264a617474effa5dd7bc9a7af948698d22";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/en-CA/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/en-CA/thunderbird-102.4.1.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha256 = "f8f1801eb8676a095efa20e410121ebe2eaef1517d0b549bca27b435bcaf097e";
+      sha256 = "912c66112f579d4d1706fde17ca9486b87b8f41704d097133917fe19b17de207";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/en-GB/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/en-GB/thunderbird-102.4.1.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha256 = "57d3cc43fb1b6012d5fa91f3ed5a55fccf162137ee00e186ee1954b50f445759";
+      sha256 = "44b565dc144279634a09e7df19acb8305a849a595544fb76441024be86445e77";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/en-US/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/en-US/thunderbird-102.4.1.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha256 = "e21b148eab4e643c5a66b61b892775c9761efe38db9a41e0d9d6ad63fdb9fa03";
+      sha256 = "90af8e3e27da95f19c57d7caa8bccdd10edcc8885d896459fad97d810f7145b9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/es-AR/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/es-AR/thunderbird-102.4.1.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha256 = "dd3e4356aaac24bc1be1a2a7f9e662d9d97e77971de961816f2e6cb0f46175cf";
+      sha256 = "86b73f1335573c7eef2526450862f3d972212eca17701692bfa4772c0dff80e5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/es-ES/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/es-ES/thunderbird-102.4.1.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha256 = "70600cde32452b505fe76352f8a53f124169b20ec75c6089d45e0b3e0709aa74";
+      sha256 = "4839baf4f37b792d090682a1abd85f22070e417dde366b8b7d0ead0760801d55";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/es-MX/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/es-MX/thunderbird-102.4.1.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha256 = "c07ff511260781cca4e2f4ac82d7c1aa76e990fe7a0770fb9bd5551766838fcc";
+      sha256 = "65ab28668cc350cd267c6253ea4a005003ce15957731630a51980c92993ece26";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/et/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/et/thunderbird-102.4.1.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha256 = "156d75d2638a2e44d345ca2bd2374f321193227089827b4d2d69feb89a4dd6c4";
+      sha256 = "2460aea7a1ca6d2b4f7e7e0e9b50faae4f6b3ff32da08d17d2fa2b1b27117748";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/eu/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/eu/thunderbird-102.4.1.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha256 = "8af2a6e5bb6e2bf2d03c97e90ce0115faf8c40121e7210c20be88b16fb2e0feb";
+      sha256 = "6a9811c55c58fa8289470b09e712809f61ef3a63183f091f385b6d2ba4ab8944";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/fi/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/fi/thunderbird-102.4.1.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha256 = "ca98fe916aa005b60511ae7c1274e64726a5f35d567ac7407a80cb0438878fe4";
+      sha256 = "a96a55089b5c308cdb62eb06bdaf48a409b359e725bfbba503a0a8c0ad4bd326";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/fr/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/fr/thunderbird-102.4.1.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha256 = "6c9fc2454dfd286a8efc3b8de6377044f2ccabc6e0379b9e1cc2cd16653a7840";
+      sha256 = "a01c8d0b02660ad13ec481ce422323149e0715c76b4578f64faa99d0ac02d875";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/fy-NL/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/fy-NL/thunderbird-102.4.1.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha256 = "0822c65394cda172ee1f66688db6d86c7426df44a80770a0d22d824ffacf7f7b";
+      sha256 = "24d9c5c3fed8a6f28a2a745589ab4cf21befbb8672eacf04f91894b2813e4f1d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/ga-IE/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/ga-IE/thunderbird-102.4.1.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha256 = "70d56fd565b1ab65946819347a5b2394d179358e3eb8d1e87b24056d87a516e6";
+      sha256 = "1fe82aed70a135e2d0a1d554d377d62f3589847cabd40d7cd52c4967b149019d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/gd/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/gd/thunderbird-102.4.1.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha256 = "bb156b134b3e43b015de264e6852f9cec656dab4c395efecf6035cd937187d0c";
+      sha256 = "6dcb8795cb011c82cdc0b9546bfbe82a2cc60b3c2d48b411d34289f2af2ca5a8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/gl/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/gl/thunderbird-102.4.1.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha256 = "5ed959f3ea9f0961948b525bb51126a7d1786c5468868586267ff46c1b7dd121";
+      sha256 = "4782e04e116b5ffdfd44be22b395230a1ff038b8a9139d63603202b59b9e64f2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/he/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/he/thunderbird-102.4.1.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha256 = "fdd0cbf39f8f0f982ec034627d68661d3392aa2657353941c4664f610497ea00";
+      sha256 = "b5ae398d3d4e938a291acead5d142457eddd35cf684e11a71a59bf7234e3990d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/hr/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/hr/thunderbird-102.4.1.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha256 = "aecf6bf555c84b6cae28cf4514efee9c6334fd1c69e3afbf045842748645f2ec";
+      sha256 = "d77d401127a36b18af9f2943d1715ac275511b8f81a1b8e7e4f01b7526a40b39";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/hsb/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/hsb/thunderbird-102.4.1.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha256 = "8381a36906102e17e165f8d383d0f8bba7dde4a39264e14b66bca5313a9da077";
+      sha256 = "04b8a940833c3014dcea58a8a86562e6f972ef804421d4faaa06b6b35e19857f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/hu/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/hu/thunderbird-102.4.1.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha256 = "3193566d29f0407b9ba5cbde1f470d7a5fa4d501eab23d3709246a082d96ab33";
+      sha256 = "f1fb7b74b67fb3f370128c77c1a983d2902bf5c128d256c6a3b7db980f7c6760";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/hy-AM/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/hy-AM/thunderbird-102.4.1.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha256 = "284a4cd9731abddf68e8cdd5c2c52cdfb0da22732f5d2f6b782f3311d9c297f0";
+      sha256 = "234b9c7ce41db8a299d1539f3b60205a35124ec228c5cebe128d2a0668c80a52";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/id/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/id/thunderbird-102.4.1.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha256 = "cc61630f7ab5261d42bec691625bbdaaa9a1788b99807b06f3d5c34961d67432";
+      sha256 = "b03b878f22baeadcebd1fc23097acf98fefb225b95deb237b32325948acf953d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/is/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/is/thunderbird-102.4.1.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha256 = "2852c2c6fe22756e83d27b3718d8913cd0618b2491e1b327251fe94f081c30de";
+      sha256 = "100a22dbe23e9f54bc64557b0ee84dfb8521cb5a9731e042f34369b33627a712";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/it/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/it/thunderbird-102.4.1.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha256 = "85e81bb62a94205d3886d335cc70ad2024bd66658d2b0037cf2ef72118955ec9";
+      sha256 = "654a68be2e5fa83a6662a1e4b3d63a5689cdac0b09e6e77783e8c81b55ccab99";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/ja/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/ja/thunderbird-102.4.1.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha256 = "e5de175ef6e96d34da21ff9c82059f37867ca279c07f2aee748c21ad9fcc9133";
+      sha256 = "707dbe36c38cd81ca249def1ad8e5c9d37f27f73cfb136505afc6ae1b27d2053";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/ka/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/ka/thunderbird-102.4.1.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha256 = "b32652acce69f60795ab6e8a942b15ab394cda4a2d8ada37f8f1436628e6cc18";
+      sha256 = "f2194efcd5acfcec0b0a6b92160ff1466f6d0774115dd8c36309e0faabaeca09";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/kab/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/kab/thunderbird-102.4.1.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha256 = "ffd8fda6889463a558c1354af2fdb30680c564c7650c0d70e9a12bc02f71ea45";
+      sha256 = "57e4eb29c16c60e17529ba15ece3fc4402593a52d648afc7df966f8e6fb615fc";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/kk/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/kk/thunderbird-102.4.1.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha256 = "c664d38e01e27b2869848d4a12bc703bb61fb60369b56dd0fba8d5225bd45069";
+      sha256 = "aba703a49c0af16b2657d7a91b87f4bad76931156a841f894970df0084ca54a5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/ko/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/ko/thunderbird-102.4.1.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha256 = "d1e116857ce58acab34af920f767d7eba9d9080a2135aa2651a0b398860b199d";
+      sha256 = "c20dec78ede44f9d415de07c33fdd5485109a6741a961a1f00dadbeabb07743e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/lt/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/lt/thunderbird-102.4.1.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha256 = "2df015a969cc5bd0571051bcac8c73e8164519bcb395dbab290a8b31e0da6eed";
+      sha256 = "5e4bfa86cb6205c125535682c99ef1ebabd10d6a2b86e70a9e8c8e3bbb75b938";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/lv/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/lv/thunderbird-102.4.1.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha256 = "1926845d7d6c73950faa160a2e06eb530ed250e45ca1c6ca2b3dce1744d36494";
+      sha256 = "5f96da9f4b3554e3f49cd604c37e5550ab05eda2509721303fd69291f3200731";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/ms/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/ms/thunderbird-102.4.1.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha256 = "8d029da2bc3b1dbeac391c8cf089cc24ccf7c090b7636308b5778f8f563d84fb";
+      sha256 = "243bfaff279b46c93cdb43bb60f47571b88127bc6ff3708655244e89f3b7b79a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/nb-NO/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/nb-NO/thunderbird-102.4.1.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha256 = "9bfce479878b1431cde83522b3a13bb85e962699ef49860be39dcf98fd4ab2ec";
+      sha256 = "1968e30fc26c664e37e3d5613f1be7b7d4e374cbd651a3f3959e0645394da573";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/nl/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/nl/thunderbird-102.4.1.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha256 = "b94854a1e278514930f4d6f405c99c2674a6a0d6bbd2a606e8e2931d20d64c27";
+      sha256 = "9bafdb18d55822ca1144068fa6e2ac98486db6ba8ca6484d4c65c00b3e6e04d7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/nn-NO/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/nn-NO/thunderbird-102.4.1.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha256 = "a3b6ea808b6b190ff60c17a173132180d07bddc0683ac12e6bf5537660aee957";
+      sha256 = "def8e916acd5d93e949e6ef8d115e8feef54b208ed8476bb4921b691125778eb";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/pa-IN/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/pa-IN/thunderbird-102.4.1.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha256 = "9681f45460a6583a26e9580784f27ba565184391de142d1d23cf75e4ace0a102";
+      sha256 = "4cba4e78b252360634efb558cb5fcf6389613d60012a2a416f2f82e212fa204f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/pl/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/pl/thunderbird-102.4.1.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha256 = "56359ce8ff9a1904954ef4c8c04d3ddeba4dfcf60e14fe3be8864c43f38023d0";
+      sha256 = "eae5a29e37bedaf349068ff780ed7eb9e1091cb4a9253de03bf22ec93a959602";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/pt-BR/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/pt-BR/thunderbird-102.4.1.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha256 = "cf46c656f7ef37737dec931beb88c03ee79cb90e0cca429e22cf8d311b1b2aac";
+      sha256 = "9114d726fc80221b827cd33204fdd7e7e34d49690d4a7c252ce6b27e44cb8c98";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/pt-PT/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/pt-PT/thunderbird-102.4.1.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha256 = "30a03b9bdc9e0fb3272d283f44b446011c1801608f4cdca730848598b7671dce";
+      sha256 = "9dcb58828d399f7fc45a9382f998b6c33fff6719d6559be8e3de71807ceb7673";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/rm/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/rm/thunderbird-102.4.1.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha256 = "87db729d6fe4f93dfefd009d49e631b9a0540927e854d5a908951708e06ee902";
+      sha256 = "049160cd75f2677dcf31e96932a6f69c2c2d3261466b6eb91681d7cb3b8b9875";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/ro/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/ro/thunderbird-102.4.1.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha256 = "dfb295a1dd9c0fcc5e2d2a2645d9b6a7a9404f0c278404501b407963a7fd7adf";
+      sha256 = "9edfb7e929bdf6b99bb689057b397d6fe02bc62d8082f35fd9341d94b840b316";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/ru/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/ru/thunderbird-102.4.1.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha256 = "72416015e3a56f05e31cc90970903e16d756a219c63a776177431b0688f23a56";
+      sha256 = "eabaeadbfa7ab6cfc44ad52dd724a93227b02bd84e2b5df71cac08279fccfe56";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/sk/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/sk/thunderbird-102.4.1.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha256 = "2ff17c8a109e1031032f9deae6997b2d7a70658e89af39436618904020162afa";
+      sha256 = "7034db34602ff5c0c7bac02d3b04ad5765ade99896ab84cc96020bcca93f655d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/sl/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/sl/thunderbird-102.4.1.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha256 = "fa907a23de32b00eda97533345a8e77ba3badb4b6fb4660b5b9616fc1ecaf796";
+      sha256 = "e3069c0f783bcb2b6113d5a48341ecab30c0aef950312edaea778a540bb9a85a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/sq/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/sq/thunderbird-102.4.1.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha256 = "60fc9e217138531ae014348f793bf8b159c85c253069f1e3881357f63c047946";
+      sha256 = "c07ce8c31a21d0f7f52fcf4d0fb069be0530ad3bc9e198cd6003aa4e28293ab9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/sr/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/sr/thunderbird-102.4.1.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha256 = "f6eccd0e094adec5eb092c926a59a5a162dd38c3f0919f1dca057203d3daa6cf";
+      sha256 = "af8c3097acb38299a4b5e28af64fb24e447970b0447b670b98b105d17e58555c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/sv-SE/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/sv-SE/thunderbird-102.4.1.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha256 = "029918b677978a74fc5c896d529d07201e38e283256cc83aa065b721f6570b51";
+      sha256 = "24e97a18161fda49002455d5bd971f418a4968e4549ef262974a996fa3595313";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/th/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/th/thunderbird-102.4.1.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha256 = "ca3f0bbf8e077f1521d949171353e9404939cacadefe96fb1ee6d9b86237bcd8";
+      sha256 = "cc6c8cc43e57e1ef99f41e27e71c49d56505cd15cf0768276dfeb2619e498f09";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/tr/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/tr/thunderbird-102.4.1.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha256 = "d09d7fedce1a467ce32948332e9b7695d8113c3ee3078c9771cdd4a87168d164";
+      sha256 = "805ce60935c470d39b2d254f2011c52e152b4762c6074372e85968bba327c1c5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/uk/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/uk/thunderbird-102.4.1.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha256 = "834914fa4b058721d7f3d43e3fd9b0f509d4284315780999057f8960feb87fe0";
+      sha256 = "e853a99a029ad1e44e3f5427c0cc75bb09ce12a786a4c9237c330e09d6a2dadf";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/uz/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/uz/thunderbird-102.4.1.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha256 = "d4e9309eef2f58271097e750fc46988200526ef6971f2bce7487305dfc1f8d37";
+      sha256 = "577fe9f24adfa657728a6ff5739deb51e1fe587b8a56f2ed13784959e3cc74c3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/vi/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/vi/thunderbird-102.4.1.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha256 = "ef1d679ae415ebc51353f2ca475dd9c968a308150387f33c85cc1fb5fb7d3d0f";
+      sha256 = "12e92bf539e5d85fcac7c66272c4386c4d30415b47cf47e7333b15916e1c3e2f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/zh-CN/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/zh-CN/thunderbird-102.4.1.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha256 = "61e247c35e102c836c68083ecae7ab8268dcc7d4a6fa15cd81dcf2e9a9ae7053";
+      sha256 = "ddbce4614458821f01c7b09426afa230788042fd3412d8b565e4012fea3e4542";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.0/linux-i686/zh-TW/thunderbird-102.4.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.4.1/linux-i686/zh-TW/thunderbird-102.4.1.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha256 = "b464abc16f43d675a70d0b05491fbca28b8c3c9e5a6e684b2d442081b8538a2b";
+      sha256 = "c7e82984695a17192bd07ad6d826545daaea8074d1e8723b0397db888162fa60";
     }
     ];
 }
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/packages.nix b/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
index f4052a312a12f..36373e08c86fc 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
@@ -5,13 +5,13 @@ rec {
 
   thunderbird-102 = (buildMozillaMach rec {
     pname = "thunderbird";
-    version = "102.4.0";
+    version = "102.4.1";
     application = "comm/mail";
     applicationName = "Mozilla Thunderbird";
     binaryName = pname;
     src = fetchurl {
       url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
-      sha512 = "e2ce59eefb0c4df3eb20af01af2b7ad78a09e0fbac7bcc8800538d6655ca63a5d132c0700e2465654cc707a50aee01c62df0532f2c53b5f11c2d3a7ca881d8f0";
+      sha512 = "8855f7bf1ee2c9f6859189f3aa8afa5d851af2f4edb1a63e3804ec7796f228addf2819028ca6213f7c3f6c452cf4915801df1e706d7c84d8f15e0a627c77b7b6";
     };
     extraPatches = [
       # The file to be patched is different from firefox's `no-buildconfig-ffx90.patch`.
diff --git a/pkgs/applications/networking/n8n/node-packages.nix b/pkgs/applications/networking/n8n/node-packages.nix
index fb578d0d05e79..6836e00c7e01b 100644
--- a/pkgs/applications/networking/n8n/node-packages.nix
+++ b/pkgs/applications/networking/n8n/node-packages.nix
@@ -166,49 +166,121 @@ let
         sha512 = "UA/8dgLy3+ZiwJjAZHxL4MUB14fFQPkaAOZ94jsTW/Z6WmoOeny2+cLk0+dyIX/iH6qSrEWKwbStEeB970B9pA==";
       };
     };
-    "@azure/msal-browser-2.29.0" = {
+    "@azure/msal-browser-2.30.0" = {
       name = "_at_azure_slash_msal-browser";
       packageName = "@azure/msal-browser";
-      version = "2.29.0";
+      version = "2.30.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-2.29.0.tgz";
-        sha512 = "ezrB0qL1WsJSNgvLmAN5vKr/4pH28UYLe8JUZeHzB6Z408JU8qYXXGnHAhDPzpDg0g91eG05IdIVrLwxk/i15g==";
+        url = "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-2.30.0.tgz";
+        sha512 = "4Y9+rjJiTFP7KEmuq1btmIrBgk0ImNyKsXj6A6NHZALd1X0M6W7L7kxpH6F+d1tEkMv8bYnZdn7IcauXbL8Llw==";
       };
     };
-    "@azure/msal-common-7.5.0" = {
+    "@azure/msal-common-7.6.0" = {
       name = "_at_azure_slash_msal-common";
       packageName = "@azure/msal-common";
-      version = "7.5.0";
+      version = "7.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@azure/msal-common/-/msal-common-7.5.0.tgz";
-        sha512 = "W+SIsGSjkUAyDggA/6QVMKErttQ/8Bq9l/7ADr7GJwt9JFsc+XNBdQDsOsUvZ7YCVkZcSgzJw2MZJLIBqfQtQA==";
+        url = "https://registry.npmjs.org/@azure/msal-common/-/msal-common-7.6.0.tgz";
+        sha512 = "XqfbglUTVLdkHQ8F9UQJtKseRr3sSnr9ysboxtoswvaMVaEfvyLtMoHv9XdKUfOc0qKGzNgRFd9yRjIWVepl6Q==";
       };
     };
-    "@azure/msal-node-1.14.1" = {
+    "@azure/msal-node-1.14.2" = {
       name = "_at_azure_slash_msal-node";
       packageName = "@azure/msal-node";
-      version = "1.14.1";
+      version = "1.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.14.1.tgz";
-        sha512 = "RftjLd35xlafh5cPT17zrzpYdcsbHKJal7R/FTbThpbetSk8y8vQHUzNwWNhBM6GFFiyMS4IQ+zs+z8bgJ4sKQ==";
+        url = "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.14.2.tgz";
+        sha512 = "t3whVhhLdZVVeDEtUPD2Wqfa8BDi3EDMnpWp8dbuRW0GhUpikBfs4AQU0Fe6P9zS87n9LpmUTLrIcPEEuzkvfA==";
       };
     };
-    "@azure/storage-blob-12.11.0" = {
+    "@azure/storage-blob-12.12.0" = {
       name = "_at_azure_slash_storage-blob";
       packageName = "@azure/storage-blob";
-      version = "12.11.0";
+      version = "12.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@azure/storage-blob/-/storage-blob-12.11.0.tgz";
-        sha512 = "na+FisoARuaOWaHWpmdtk3FeuTWf2VWamdJ9/TJJzj5ZdXPLC3juoDgFs6XVuJIoK30yuBpyFBEDXVRK4pB7Tg==";
+        url = "https://registry.npmjs.org/@azure/storage-blob/-/storage-blob-12.12.0.tgz";
+        sha512 = "o/Mf6lkyYG/eBW4/hXB9864RxVNmAkcKHjsGR6Inlp5hupa3exjSyH2KjO3tLO//YGA+tS+17hM2bxRl9Sn16g==";
       };
     };
-    "@babel/runtime-7.19.4" = {
+    "@babel/parser-7.20.0" = {
+      name = "_at_babel_slash_parser";
+      packageName = "@babel/parser";
+      version = "7.20.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.20.0.tgz";
+        sha512 = "G9VgAhEaICnz8iiJeGJQyVl6J2nTjbW0xeisva0PK6XcKsga7BIaqm4ZF8Rg1Wbaqmy6znspNqhPaPkyukujzg==";
+      };
+    };
+    "@babel/runtime-7.20.0" = {
       name = "_at_babel_slash_runtime";
       packageName = "@babel/runtime";
-      version = "7.19.4";
+      version = "7.20.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.0.tgz";
+        sha512 = "NDYdls71fTXoU8TZHfbBWg7DiZfNzClcKui/+kyi6ppD2L1qnWW3VV6CjtaBXSUGGhiTWJ6ereOIkUvenif66Q==";
+      };
+    };
+    "@codemirror/autocomplete-6.3.0" = {
+      name = "_at_codemirror_slash_autocomplete";
+      packageName = "@codemirror/autocomplete";
+      version = "6.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@codemirror/autocomplete/-/autocomplete-6.3.0.tgz";
+        sha512 = "4jEvh3AjJZTDKazd10J6ZsCIqaYxDMCeua5ouQxY8hlFIml+nr7le0SgBhT3SIytFBmdzPK3AUhXGuW3T79nVg==";
+      };
+    };
+    "@codemirror/commands-6.1.2" = {
+      name = "_at_codemirror_slash_commands";
+      packageName = "@codemirror/commands";
+      version = "6.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@codemirror/commands/-/commands-6.1.2.tgz";
+        sha512 = "sO3jdX1s0pam6lIdeSJLMN3DQ6mPEbM4yLvyKkdqtmd/UDwhXA5+AwFJ89rRXm6vTeOXBsE5cAmlos/t7MJdgg==";
+      };
+    };
+    "@codemirror/lang-javascript-6.1.1" = {
+      name = "_at_codemirror_slash_lang-javascript";
+      packageName = "@codemirror/lang-javascript";
+      version = "6.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@codemirror/lang-javascript/-/lang-javascript-6.1.1.tgz";
+        sha512 = "F4+kiuC5d5dUSJmff96tJQwpEXs/tX/4bapMRnZWW6bHKK1Fx6MunTzopkCUWRa9bF87GPmb9m7Qtg7Yv8f3uQ==";
+      };
+    };
+    "@codemirror/language-6.3.0" = {
+      name = "_at_codemirror_slash_language";
+      packageName = "@codemirror/language";
+      version = "6.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.19.4.tgz";
-        sha512 = "EXpLCrk55f+cYqmHsSR+yD/0gAIMxxA9QK9lnQWzhMCvt+YmoBN7Zx94s++Kv0+unHk39vxNO8t+CMA2WSS3wA==";
+        url = "https://registry.npmjs.org/@codemirror/language/-/language-6.3.0.tgz";
+        sha512 = "6jOE5DEt6sKD46SXhn3xPbBehn+l48ACcA6Uxs2k+E2YNH9XGF5WdGMTYr2DlggfK4h0QZBK6zEb5S7lkTriWA==";
+      };
+    };
+    "@codemirror/lint-6.0.0" = {
+      name = "_at_codemirror_slash_lint";
+      packageName = "@codemirror/lint";
+      version = "6.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@codemirror/lint/-/lint-6.0.0.tgz";
+        sha512 = "nUUXcJW1Xp54kNs+a1ToPLK8MadO0rMTnJB8Zk4Z8gBdrN0kqV7uvUraU/T2yqg+grDNR38Vmy/MrhQN/RgwiA==";
+      };
+    };
+    "@codemirror/state-6.1.2" = {
+      name = "_at_codemirror_slash_state";
+      packageName = "@codemirror/state";
+      version = "6.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@codemirror/state/-/state-6.1.2.tgz";
+        sha512 = "Mxff85Hp5va+zuj+H748KbubXjrinX/k28lj43H14T2D0+4kuvEFIEIO7hCEcvBT8ubZyIelt9yGOjj2MWOEQA==";
+      };
+    };
+    "@codemirror/view-6.4.0" = {
+      name = "_at_codemirror_slash_view";
+      packageName = "@codemirror/view";
+      version = "6.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@codemirror/view/-/view-6.4.0.tgz";
+        sha512 = "Kv32b6Tn7QVwFbj/EDswTLSocjk5kgggF6zzBFAL4o4hZ/vmtFD155+EjH1pVlbfoDyVC2M6SedPsMrwYscgNg==";
       };
     };
     "@colors/colors-1.5.0" = {
@@ -247,13 +319,13 @@ let
         sha512 = "hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==";
       };
     };
-    "@fontsource/open-sans-4.5.12" = {
+    "@fontsource/open-sans-4.5.13" = {
       name = "_at_fontsource_slash_open-sans";
       packageName = "@fontsource/open-sans";
-      version = "4.5.12";
+      version = "4.5.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fontsource/open-sans/-/open-sans-4.5.12.tgz";
-        sha512 = "WKCexsVbOECJUSOgG7GnrUxe+3ds4Sa1yhsTjSnszI+0TaJvMZnDnn5YDKwA/KwLbkZqCaV3nvMTH97jJuxWNA==";
+        url = "https://registry.npmjs.org/@fontsource/open-sans/-/open-sans-4.5.13.tgz";
+        sha512 = "/UzqP7ZFk145XAq8KG4pvFPP7UQhtreDGXgqXZjagCDreKxcrhwn/x7DYz9rPcycWkLUVApIybcoczGZiM0cRg==";
       };
     };
     "@fortawesome/fontawesome-common-types-0.2.36" = {
@@ -337,13 +409,13 @@ let
         sha512 = "RxSa9VjcDWgWCYsaLdZItdCnJj7p4LxggaEk+Y3MP0dHKoxez8ioG07DVekVbZZqccsrL+oPB/N9AzVPxj4blg==";
       };
     };
-    "@js-joda/core-5.4.1" = {
+    "@js-joda/core-5.4.2" = {
       name = "_at_js-joda_slash_core";
       packageName = "@js-joda/core";
-      version = "5.4.1";
+      version = "5.4.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@js-joda/core/-/core-5.4.1.tgz";
-        sha512 = "+uMco2Xm9VYJ81XYWwrvgsM9xEvqs9JvLNrN4/fOg7YJKk4yeqAg+O/cpoFPTGxvfL2Zy0mUcnKlIz9UV0Cadw==";
+        url = "https://registry.npmjs.org/@js-joda/core/-/core-5.4.2.tgz";
+        sha512 = "QIDIZ9a0NfDStgD47VaTgwiPjlw1p4QPLwjOB/9+/DqIztoQopPNNAd+HdtQMHgE+ibP3dJacd8/TVL/A1RaaA==";
       };
     };
     "@jsdevtools/ono-7.1.3" = {
@@ -382,6 +454,42 @@ let
         sha512 = "GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw==";
       };
     };
+    "@lezer/common-1.0.1" = {
+      name = "_at_lezer_slash_common";
+      packageName = "@lezer/common";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@lezer/common/-/common-1.0.1.tgz";
+        sha512 = "8TR5++Q/F//tpDsLd5zkrvEX5xxeemafEaek7mUp7Y+bI8cKQXdSqhzTOBaOogETcMOVr0pT3BBPXp13477ciw==";
+      };
+    };
+    "@lezer/highlight-1.1.2" = {
+      name = "_at_lezer_slash_highlight";
+      packageName = "@lezer/highlight";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@lezer/highlight/-/highlight-1.1.2.tgz";
+        sha512 = "CAun1WR1glxG9ZdOokTZwXbcwB7PXkIEyZRUMFBVwSrhTcogWq634/ByNImrkUnQhjju6xsIaOBIxvcRJtplXQ==";
+      };
+    };
+    "@lezer/javascript-1.0.2" = {
+      name = "_at_lezer_slash_javascript";
+      packageName = "@lezer/javascript";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@lezer/javascript/-/javascript-1.0.2.tgz";
+        sha512 = "IjOVeIRhM8IuafWNnk+UzRz7p4/JSOKBNINLYLsdSGuJS9Ju7vFdc82AlTt0jgtV5D8eBZf4g0vK4d3ttBNz7A==";
+      };
+    };
+    "@lezer/lr-1.2.3" = {
+      name = "_at_lezer_slash_lr";
+      packageName = "@lezer/lr";
+      version = "1.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@lezer/lr/-/lr-1.2.3.tgz";
+        sha512 = "qpB7rBzH8f6Mzjv2AVZRahcm+2Cf7nbIH++uXbvVOL1yIRvVWQ3HAM/saeBLCyz/togB7LGo76qdJYL1uKQlqA==";
+      };
+    };
     "@mapbox/node-pre-gyp-1.0.10" = {
       name = "_at_mapbox_slash_node-pre-gyp";
       packageName = "@mapbox/node-pre-gyp";
@@ -463,13 +571,13 @@ let
         sha512 = "R6dBedaUVn5jtAh79aaRm7jezx4l3V7Im9NORlLmudz5BL1foMeuXEvnqm+bMiejyexVA+oi9mto6YKZPzo/5Q==";
       };
     };
-    "@oclif/core-1.16.5" = {
+    "@oclif/core-1.19.2" = {
       name = "_at_oclif_slash_core";
       packageName = "@oclif/core";
-      version = "1.16.5";
+      version = "1.19.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@oclif/core/-/core-1.16.5.tgz";
-        sha512 = "Jb58K79AALkLmY0PNU1Jx4Z+/JIWtpgtRbei92PIIBx+TaAmYgVySNI1beInZFNOpGo2fhxVBp+yr3DZ38z3kQ==";
+        url = "https://registry.npmjs.org/@oclif/core/-/core-1.19.2.tgz";
+        sha512 = "n5ni/NNR6+I0IQXVGoLKdrdw6IS3WH/R/hw6WX8ERfLMZACrNSuJFD9EmBZkztyRkmiQ2L06ULazW5bJn5Shog==";
       };
     };
     "@oclif/errors-1.3.6" = {
@@ -535,13 +643,13 @@ let
         sha512 = "kJYCXv6fRFbQrAp3hMsgRCnAa7RUBdbiGLBT9PcpQURi0VwHmD7mk3Ja7U4HDnL0EHXYJpPyx3oSonkklmPJ9Q==";
       };
     };
-    "@sap/hana-client-2.14.18" = {
+    "@sap/hana-client-2.14.22" = {
       name = "_at_sap_slash_hana-client";
       packageName = "@sap/hana-client";
-      version = "2.14.18";
+      version = "2.14.22";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@sap/hana-client/-/hana-client-2.14.18.tgz";
-        sha512 = "9TfoDuxWZyUYIwISVVMPguX9iirZrD0cI6rI0xXg6URRaqk71GZ5U0ueomeZapSY1nni2Yf+th1ZjU+jSUw/9g==";
+        url = "https://registry.npmjs.org/@sap/hana-client/-/hana-client-2.14.22.tgz";
+        sha512 = "Do1VnybxssI5kAg/ti4GoEOhgU7p7R9T9/v9amzDNZMg7rC7C4LVno+x++ERTWv81pzSaSrYKkr2O/MP7OE1hA==";
       };
     };
     "@segment/loosely-validate-event-2.0.0" = {
@@ -571,13 +679,13 @@ let
         sha512 = "sBSO19KzdrJCM3gdx6eIxV8M9Gxfgg6iDQmH5TIAGaUu+X9VDdsINXJOnoiZ1Kx3TrHdH4bt5UVglkjsEGBcvw==";
       };
     };
-    "@sqltools/formatter-1.2.3" = {
+    "@sqltools/formatter-1.2.5" = {
       name = "_at_sqltools_slash_formatter";
       packageName = "@sqltools/formatter";
-      version = "1.2.3";
+      version = "1.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@sqltools/formatter/-/formatter-1.2.3.tgz";
-        sha512 = "O3uyB/JbkAEMZaP3YqyHH7TMnex7tWyCbCI4EfJdOCoN6HIhqdJBWTM6aCCiWQ/5f5wxjgU735QAIpJbjDvmzg==";
+        url = "https://registry.npmjs.org/@sqltools/formatter/-/formatter-1.2.5.tgz";
+        sha512 = "Uy0+khmZqUrUGm5dmMqVlnvufZRSK0FbYzVgp0UMstm+F5+W2/jnEEQyc9vo1ZR/E5ZI/B1WjjoTqBqwJL6Krw==";
       };
     };
     "@techteamer/ocsp-1.0.0" = {
@@ -679,22 +787,22 @@ let
         sha512 = "DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q==";
       };
     };
-    "@types/express-unless-0.5.3" = {
+    "@types/express-unless-2.0.1" = {
       name = "_at_types_slash_express-unless";
       packageName = "@types/express-unless";
-      version = "0.5.3";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/express-unless/-/express-unless-0.5.3.tgz";
-        sha512 = "TyPLQaF6w8UlWdv4gj8i46B+INBVzURBNRahCozCSXfsK2VTlL1wNyTlMKw817VHygBtlcl5jfnPadlydr06Yw==";
+        url = "https://registry.npmjs.org/@types/express-unless/-/express-unless-2.0.1.tgz";
+        sha512 = "PJLiNw03EjkWDkQbhNjIXXDLObC3eMQhFASDV+WakFbT8eL7YdjlbV6MXd3Av5Lejq499d6pFuV1jyK+EHyG3Q==";
       };
     };
-    "@types/js-nacl-1.3.0" = {
+    "@types/js-nacl-1.3.1" = {
       name = "_at_types_slash_js-nacl";
       packageName = "@types/js-nacl";
-      version = "1.3.0";
+      version = "1.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/js-nacl/-/js-nacl-1.3.0.tgz";
-        sha512 = "juUvxo444ZfwDSwWyhssMxSN+snqTdiUoOVXZF+/ffVrGHq3rAf1fmczWn3z9TCEAuRbaTmgAcYlZ9MutyyOkQ==";
+        url = "https://registry.npmjs.org/@types/js-nacl/-/js-nacl-1.3.1.tgz";
+        sha512 = "flSA1xio62MepOtcglW7s+V7jFoJqGAAQXFRKZ3NkLbw36LEoQYQQ2jighvbr7DB1g6bCFB4YOx+x/CNQj1TsA==";
       };
     };
     "@types/json-schema-7.0.11" = {
@@ -742,13 +850,13 @@ let
         sha512 = "J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==";
       };
     };
-    "@types/node-18.8.3" = {
+    "@types/node-18.11.7" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "18.8.3";
+      version = "18.11.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-18.8.3.tgz";
-        sha512 = "0os9vz6BpGwxGe9LOhgP/ncvYN5Tx1fNcd2TM3rD/aCGBkysb+ZWpXEocG24h6ZzOi13+VB8HndAQFezsSOw1w==";
+        url = "https://registry.npmjs.org/@types/node/-/node-18.11.7.tgz";
+        sha512 = "LhFTglglr63mNXUSRYD8A+ZAIu5sFqNJ4Y2fPuY7UlrySJH87rRRlhtVmMHplmfk5WkoJGmDjE9oiTfyX94CpQ==";
       };
     };
     "@types/node-fetch-2.6.2" = {
@@ -832,13 +940,22 @@ let
         sha512 = "FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==";
       };
     };
-    "@xmldom/xmldom-0.7.5" = {
+    "@vue/compiler-sfc-2.7.13" = {
+      name = "_at_vue_slash_compiler-sfc";
+      packageName = "@vue/compiler-sfc";
+      version = "2.7.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.13.tgz";
+        sha512 = "zzu2rLRZlgIU+OT3Atbr7Y6PG+LW4wVQpPfNRrGDH3dM9PsrcVfa+1pKb8bW467bGM3aDOvAnsYLWVpYIv3GRg==";
+      };
+    };
+    "@xmldom/xmldom-0.7.6" = {
       name = "_at_xmldom_slash_xmldom";
       packageName = "@xmldom/xmldom";
-      version = "0.7.5";
+      version = "0.7.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.5.tgz";
-        sha512 = "V3BIhmY36fXZ1OtVcI9W+FxQqxVLsPKcNjWigIaa81dLC9IolJl5Mt4Cvhmr0flUnjSpTdrbMTSbXqYqV5dT6A==";
+        url = "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.6.tgz";
+        sha512 = "HHXP9hskkFQHy8QxxUXkS7946FFIhYVfGqsk0WLwllmexN9x/+R4UBLvurHEuyXRfVEObVR8APuQehykLviwSQ==";
       };
     };
     "a-sync-waterfall-1.0.1" = {
@@ -886,13 +1003,13 @@ let
         sha512 = "H5aqjkogmFxfaOrfn/e42vyspHVXuJ8er63KuljJXpOyJ1ZO/U5CrHfO8BLKIy2w7mBM02L5quL0vbfQqrGQbA==";
       };
     };
-    "acorn-8.8.0" = {
+    "acorn-8.8.1" = {
       name = "acorn";
       packageName = "acorn";
-      version = "8.8.0";
+      version = "8.8.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz";
-        sha512 = "QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==";
+        url = "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz";
+        sha512 = "7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==";
       };
     };
     "acorn-walk-8.2.0" = {
@@ -913,15 +1030,6 @@ let
         sha512 = "gMKr8RuYEYvsj7jyfCv/4BfKToQThz20SP71N3AtFn3ia3yAR8Qt2T3aVQhuJzunWs2b38ZsQV0qsZPdwZr7VQ==";
       };
     };
-    "address-1.2.1" = {
-      name = "address";
-      packageName = "address";
-      version = "1.2.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/address/-/address-1.2.1.tgz";
-        sha512 = "B+6bi5D34+fDYENiH5qOlA0cV2rAGKuWZ9LeyUUehbXy8e0VS9e498yO0Jeeh+iM+6KbfudHTFjXw2MmJD4QRA==";
-      };
-    };
     "adler-32-1.2.0" = {
       name = "adler-32";
       packageName = "adler-32";
@@ -1300,13 +1408,13 @@ let
         sha512 = "jyn9tfd9J3h7pgJSk4qQ/1c1Tk5qiXrvmdCDON2UjcFplqRu/KpmKmpi+Ess8ZKmmqK12U4Y3VHrfwQs1xSMZA==";
       };
     };
-    "aws-sdk-2.1231.0" = {
+    "aws-sdk-2.1242.0" = {
       name = "aws-sdk";
       packageName = "aws-sdk";
-      version = "2.1231.0";
+      version = "2.1242.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1231.0.tgz";
-        sha512 = "ONBuRsOxsu0zL8u/Vmz49tPWi9D4ls2pjb6szdfSx9VQef7bOnWe9gJpWoA94OTzcjOWsvjsG7UgjvQJkIuPBg==";
+        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1242.0.tgz";
+        sha512 = "qVpaMafIHw3Mn3Mo7zTY4Xq8lHkTxIRQJFV5ronsi4lTLqhqF1rANoPKSlVWxUPRyG5so/we+ZUIog5wpjSgiw==";
       };
     };
     "aws-sign2-0.7.0" = {
@@ -1525,13 +1633,13 @@ let
         sha512 = "1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==";
       };
     };
-    "bl-5.0.0" = {
+    "bl-5.1.0" = {
       name = "bl";
       packageName = "bl";
-      version = "5.0.0";
+      version = "5.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bl/-/bl-5.0.0.tgz";
-        sha512 = "8vxFNZ0pflFfi0WXA3WQXlj6CaMEwsmh63I1CNp0q+wWv8sD0ARx1KovSQd0l2GkwrMIOyedq0EF1FxI+RCZLQ==";
+        url = "https://registry.npmjs.org/bl/-/bl-5.1.0.tgz";
+        sha512 = "tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ==";
       };
     };
     "bluebird-2.11.0" = {
@@ -1705,13 +1813,13 @@ let
         sha512 = "a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw==";
       };
     };
-    "bufferutil-4.0.6" = {
+    "bufferutil-4.0.7" = {
       name = "bufferutil";
       packageName = "bufferutil";
-      version = "4.0.6";
+      version = "4.0.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.6.tgz";
-        sha512 = "jduaYOYtnio4aIAyc6UbvPCVcgq7nYpVnucyxr6eCYg/Woad9Hf/oxxBRDnGGjPfjUm6j5O/uBWhIu4iLebFaw==";
+        url = "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.7.tgz";
+        sha512 = "kukuqc39WOHtdxtw4UScxF/WVnMFVSQVKhtx3AjZJzhd0RGZZldcrfSEbVsWWe6KNH253574cq5F+wpv0G9pJw==";
       };
     };
     "bull-3.29.3" = {
@@ -2371,13 +2479,13 @@ let
         sha512 = "Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==";
       };
     };
-    "core-js-3.25.5" = {
+    "core-js-3.26.0" = {
       name = "core-js";
       packageName = "core-js";
-      version = "3.25.5";
+      version = "3.26.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-js/-/core-js-3.25.5.tgz";
-        sha512 = "nbm6eZSjm+ZuBQxCUPQKQCoUEfFOXjUZ8dTTyikyKaWrTYmAVbykQfwsKE5dBK88u3QCkCrzsx/PPlKfhsvgpw==";
+        url = "https://registry.npmjs.org/core-js/-/core-js-3.26.0.tgz";
+        sha512 = "+DkDrhoR4Y0PxDz6rurahuB+I45OsEUv8E1maPTB6OuHRohMMcznBq9TMpdpDMm/hUPob/mJJS3PqgbHpMTQgw==";
       };
     };
     "core-util-is-1.0.2" = {
@@ -2407,6 +2515,15 @@ let
         sha512 = "ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==";
       };
     };
+    "crelt-1.0.5" = {
+      name = "crelt";
+      packageName = "crelt";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/crelt/-/crelt-1.0.5.tgz";
+        sha512 = "+BO9wPPi+DWTDcNYhr/W90myha8ptzftZT+LwcmUbbok0rcP/fequmFYCw8NMoH7pkAZQzU78b3kYrlua5a9eA==";
+      };
+    };
     "cron-1.7.2" = {
       name = "cron";
       packageName = "cron";
@@ -2479,6 +2596,15 @@ let
         sha512 = "wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==";
       };
     };
+    "css-select-5.1.0" = {
+      name = "css-select";
+      packageName = "css-select";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz";
+        sha512 = "nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==";
+      };
+    };
     "css-what-6.1.0" = {
       name = "css-what";
       packageName = "css-what";
@@ -2497,6 +2623,15 @@ let
         sha512 = "FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==";
       };
     };
+    "csstype-3.1.1" = {
+      name = "csstype";
+      packageName = "csstype";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz";
+        sha512 = "DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==";
+      };
+    };
     "curlconverter-3.21.0" = {
       name = "curlconverter";
       packageName = "curlconverter";
@@ -2821,13 +2956,13 @@ let
         sha512 = "9YVwmMb0wQHQNr5J9m6BSj6fk4pfGITGQOOs+D9Fl+INODWFOfvhIU1hNv6GgR1RBoC/9NJcwu77zShxV0kT7w==";
       };
     };
-    "digest-header-0.0.1" = {
+    "digest-header-1.0.0" = {
       name = "digest-header";
       packageName = "digest-header";
-      version = "0.0.1";
+      version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/digest-header/-/digest-header-0.0.1.tgz";
-        sha512 = "Qi0KOZgRnkQJuvMWbs1ZRRajEnbsMU8xlJI4rHIbPC+skHQ30heO5cIHpUFT4jAvAe+zPtdavLSAxASqoyZ3cg==";
+        url = "https://registry.npmjs.org/digest-header/-/digest-header-1.0.0.tgz";
+        sha512 = "sRTuakZ2PkOUCuAaVv+SLjhr/hRf8ldZP0XnGEQ69RFGxmll5fVaMsnRXWKKK4XsUTnJf8+eRPSFNgE/lWa9wQ==";
       };
     };
     "dir-glob-3.0.1" = {
@@ -2866,6 +3001,15 @@ let
         sha512 = "VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==";
       };
     };
+    "dom-serializer-2.0.0" = {
+      name = "dom-serializer";
+      packageName = "dom-serializer";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz";
+        sha512 = "wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==";
+      };
+    };
     "domelementtype-2.3.0" = {
       name = "domelementtype";
       packageName = "domelementtype";
@@ -2884,6 +3028,15 @@ let
         sha512 = "GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==";
       };
     };
+    "domhandler-5.0.3" = {
+      name = "domhandler";
+      packageName = "domhandler";
+      version = "5.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz";
+        sha512 = "cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==";
+      };
+    };
     "domutils-2.8.0" = {
       name = "domutils";
       packageName = "domutils";
@@ -2893,6 +3046,15 @@ let
         sha512 = "w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==";
       };
     };
+    "domutils-3.0.1" = {
+      name = "domutils";
+      packageName = "domutils";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz";
+        sha512 = "z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==";
+      };
+    };
     "dot-case-3.0.4" = {
       name = "dot-case";
       packageName = "dot-case";
@@ -3046,6 +3208,15 @@ let
         sha512 = "p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==";
       };
     };
+    "entities-4.4.0" = {
+      name = "entities";
+      packageName = "entities";
+      version = "4.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz";
+        sha512 = "oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==";
+      };
+    };
     "env-paths-2.2.1" = {
       name = "env-paths";
       packageName = "env-paths";
@@ -3316,6 +3487,15 @@ let
         sha512 = "89/sdkq+BKBuIyykaMl/vR9grFc3WFUPTjFo0THHbu+5g+q8rA7fKeoMfz+h84yOQIBcztmJ5ZJdk5uhEls31A==";
       };
     };
+    "express-unless-2.1.3" = {
+      name = "express-unless";
+      packageName = "express-unless";
+      version = "2.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/express-unless/-/express-unless-2.1.3.tgz";
+        sha512 = "wj4tLMyCVYuIIKHGt0FhCtIViBcwzWejX0EjNxveAa6dG+0XBCQhMbx+PnkLkFCxLC69qoFrxds4pIyL88inaQ==";
+      };
+    };
     "extend-3.0.2" = {
       name = "extend";
       packageName = "extend";
@@ -4198,13 +4378,13 @@ let
         sha512 = "4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==";
       };
     };
-    "ics-2.40.0" = {
+    "ics-2.41.0" = {
       name = "ics";
       packageName = "ics";
-      version = "2.40.0";
+      version = "2.41.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ics/-/ics-2.40.0.tgz";
-        sha512 = "PPkE9ij60sGhqdTxZZzsXQPB/TCXAB/dD3NqUf1I/GkbJzPeJHHMzaoMQiYAsm1pFaHRp2OIhFDgUBihkk8s/w==";
+        url = "https://registry.npmjs.org/ics/-/ics-2.41.0.tgz";
+        sha512 = "6oleMfOpdBIrZGMNrTutwW7eFwua8lOkymDNxMXlsVF00HghqH+I3S6frt3a2rfjXTlkI0qiY2rnsKP2JQ9vJA==";
       };
     };
     "ieee754-1.1.13" = {
@@ -4450,13 +4630,13 @@ let
         sha512 = "1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==";
       };
     };
-    "is-core-module-2.10.0" = {
+    "is-core-module-2.11.0" = {
       name = "is-core-module";
       packageName = "is-core-module";
-      version = "2.10.0";
+      version = "2.11.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz";
-        sha512 = "Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==";
+        url = "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz";
+        sha512 = "RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==";
       };
     };
     "is-date-object-1.0.5" = {
@@ -4792,13 +4972,13 @@ let
         sha512 = "xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==";
       };
     };
-    "isbot-3.6.1" = {
+    "isbot-3.6.2" = {
       name = "isbot";
       packageName = "isbot";
-      version = "3.6.1";
+      version = "3.6.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/isbot/-/isbot-3.6.1.tgz";
-        sha512 = "e1RmjWns87x60QyiHberWWMJGutL3+Ad0nZ8cz735iDEDDS6ApPfKSFo4EMj0PmMZ0m0ntpWIM0ADdqDFvUJPQ==";
+        url = "https://registry.npmjs.org/isbot/-/isbot-3.6.2.tgz";
+        sha512 = "jk8IRbrvyTJC2f4VpxXQ4ff+xVJgsXHygtpc5Sl6m9PWuF8oXVcpEmcZKR88j5WOoqpHTxrOKccCpxdAgW7Afw==";
       };
     };
     "isexe-2.0.0" = {
@@ -5161,13 +5341,13 @@ let
         sha512 = "xOqorG21Va+3CjpFOfFTU7SWohHH2uIX9ZY4Byz6J+lvpfvc486tOAT/G9GfbrKtJ9O7NCX9o0aC2lxqbnZ9EA==";
       };
     };
-    "libphonenumber-js-1.10.13" = {
+    "libphonenumber-js-1.10.14" = {
       name = "libphonenumber-js";
       packageName = "libphonenumber-js";
-      version = "1.10.13";
+      version = "1.10.14";
       src = fetchurl {
-        url = "https://registry.npmjs.org/libphonenumber-js/-/libphonenumber-js-1.10.13.tgz";
-        sha512 = "b74iyWmwb4GprAUPjPkJ11GTC7KX4Pd3onpJfKxYyY8y9Rbb4ERY47LvCMEDM09WD3thiLDMXtkfDK/AX+zT7Q==";
+        url = "https://registry.npmjs.org/libphonenumber-js/-/libphonenumber-js-1.10.14.tgz";
+        sha512 = "McGS7GV/WjJ2KjfOGhJU1oJn29RYeo7Q+RpANRbUNMQ9gj5XArpbjurSuyYPTejFwbaUojstQ4XyWCrAzGOUXw==";
       };
     };
     "libpq-1.8.12" = {
@@ -5557,13 +5737,13 @@ let
         sha512 = "IXAq50s4qwrOBrXJklY+KhgZF+5y98PDaNo0gi/v2KQBFLyWr+JyFvijZXkGKjQj/h9c0OwoE+JZbwUXce76hQ==";
       };
     };
-    "luxon-2.5.0" = {
+    "luxon-2.3.2" = {
       name = "luxon";
       packageName = "luxon";
-      version = "2.5.0";
+      version = "2.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/luxon/-/luxon-2.5.0.tgz";
-        sha512 = "IDkEPB80Rb6gCAU+FEib0t4FeJ4uVOuX1CQ9GsvU3O+JAGIgu0J7sf1OarXKaKDygTZIoJyU6YdZzTFRu+YR0A==";
+        url = "https://registry.npmjs.org/luxon/-/luxon-2.3.2.tgz";
+        sha512 = "MlAQQVMFhGk4WUA6gpfsy0QycnKP0+NlCBJRVRNPxxSIbjrCbQ65nrpJD3FVyJNZLuJ0uoqL57ye6BmDYgHaSw==";
       };
     };
     "mailparser-3.5.0" = {
@@ -5791,13 +5971,13 @@ let
         sha512 = "9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==";
       };
     };
-    "minimist-1.2.6" = {
+    "minimist-1.2.7" = {
       name = "minimist";
       packageName = "minimist";
-      version = "1.2.6";
+      version = "1.2.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz";
-        sha512 = "Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==";
+        url = "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz";
+        sha512 = "bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==";
       };
     };
     "minipass-3.3.5" = {
@@ -5908,13 +6088,13 @@ let
         sha512 = "5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==";
       };
     };
-    "moment-timezone-0.5.37" = {
+    "moment-timezone-0.5.38" = {
       name = "moment-timezone";
       packageName = "moment-timezone";
-      version = "0.5.37";
+      version = "0.5.38";
       src = fetchurl {
-        url = "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.37.tgz";
-        sha512 = "uEDzDNFhfaywRl+vwXxffjjq1q0Vzr+fcQpQ1bU0kbzorfS7zVtZnCnGc8mhWmF39d4g4YriF6kwA75mJKE/Zg==";
+        url = "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.38.tgz";
+        sha512 = "nMIrzGah4+oYZPflDvLZUgoVUO4fvAqHstvG3xAUnMolWncuAiLDWNnJZj6EwJGMGfb1ZcuTFE6GI3hNOVWI/Q==";
       };
     };
     "monaco-editor-0.30.1" = {
@@ -5935,13 +6115,13 @@ let
         sha512 = "Psm+g3/wHXhjBEktkxXsFMZvd3nemI0r3IPsE0bU+4//PnvNWKkzhZcEsbPcYiWqe8XqXJJEg4Tgtr7Raw67Yw==";
       };
     };
-    "mongodb-4.10.0" = {
+    "mongodb-4.11.0" = {
       name = "mongodb";
       packageName = "mongodb";
-      version = "4.10.0";
+      version = "4.11.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mongodb/-/mongodb-4.10.0.tgz";
-        sha512 = "My2QxLTw0Cc1O9gih0mz4mqo145Jq4rLAQx0Glk/Ha9iYBzYpt4I2QFNRIh35uNFNfe8KFQcdwY1/HKxXBkinw==";
+        url = "https://registry.npmjs.org/mongodb/-/mongodb-4.11.0.tgz";
+        sha512 = "9l9n4Nk2BYZzljW3vHah3Z0rfS5npKw6ktnkmFgTcnzaXH1DRm3pDl6VMHu84EVb1lzmSaJC4OzWZqTkB5i2wg==";
       };
     };
     "mongodb-connection-string-url-2.5.4" = {
@@ -6061,49 +6241,49 @@ let
         sha512 = "z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==";
       };
     };
-    "n8n-core-0.137.0" = {
+    "n8n-core-0.140.1" = {
       name = "n8n-core";
       packageName = "n8n-core";
-      version = "0.137.0";
+      version = "0.140.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/n8n-core/-/n8n-core-0.137.0.tgz";
-        sha512 = "qNFzL20TDG7kdtW7rt46DEf6eAWi9MrYmCjmrliJqDOGp2CHtpwlQM8dsIDXuzHoLRX4vuYXDA4kEKA/8kPvlw==";
+        url = "https://registry.npmjs.org/n8n-core/-/n8n-core-0.140.1.tgz";
+        sha512 = "a0fNyYhL8VsxQPUz0Jya0OOFy0eIFkiK40405XkAkonah+wBBBA01g46QSDdBCn3UMeDZ/LkfY+pzypkrmjMQQ==";
       };
     };
-    "n8n-design-system-0.37.0" = {
+    "n8n-design-system-0.40.0" = {
       name = "n8n-design-system";
       packageName = "n8n-design-system";
-      version = "0.37.0";
+      version = "0.40.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/n8n-design-system/-/n8n-design-system-0.37.0.tgz";
-        sha512 = "P17+YgT5NjjuaBfqLD+CyTEaLM89q3UyuSDJgmyQdTmsg0tKwaWmVXL455a6L6syLILjwMDg77lTFKKMedBhtg==";
+        url = "https://registry.npmjs.org/n8n-design-system/-/n8n-design-system-0.40.0.tgz";
+        sha512 = "P9ZubxZzNNMiXC58L2fyAAm4R4L3dJPZ+NMjKEZbu9+11XMX9SVX1+5t2NEWz1MsgVHGRLfc3mjPr7mnn05BQQ==";
       };
     };
-    "n8n-editor-ui-0.163.1" = {
+    "n8n-editor-ui-0.166.1" = {
       name = "n8n-editor-ui";
       packageName = "n8n-editor-ui";
-      version = "0.163.1";
+      version = "0.166.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/n8n-editor-ui/-/n8n-editor-ui-0.163.1.tgz";
-        sha512 = "bKn6DkK4GuFdjW9rcaBewYZE2wF5g5zfb5zamp+I4TlJXMAsR1bSHpiq8Z8BRyGg0bR76Ny35MQvmXCbvKTejQ==";
+        url = "https://registry.npmjs.org/n8n-editor-ui/-/n8n-editor-ui-0.166.1.tgz";
+        sha512 = "AxGb+Rkq/TTytKjef60Q7Tmtyu+I4l0639aMrxg7ObqurqCjGL0WkJXaoGrb1H6pBHRSL3jU7ZuD/QfiGN93IQ==";
       };
     };
-    "n8n-nodes-base-0.195.1" = {
+    "n8n-nodes-base-0.198.1" = {
       name = "n8n-nodes-base";
       packageName = "n8n-nodes-base";
-      version = "0.195.1";
+      version = "0.198.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/n8n-nodes-base/-/n8n-nodes-base-0.195.1.tgz";
-        sha512 = "EfTySsb3sc1RzGe8Da/FClXVkCwUIErDfOjl6me8ikRGntjf7Sco6FXS6Ib0iLi6XGbXbyKlJ1c9+Phe9A1I4g==";
+        url = "https://registry.npmjs.org/n8n-nodes-base/-/n8n-nodes-base-0.198.1.tgz";
+        sha512 = "kM5L/zib1Db5LG1qIYQeEDUM05kd/pQXvxxClCs+qs8RuCMVLnjWDua48NbpiINcnpEY0GI5Hzd0mDHCMjirpA==";
       };
     };
-    "n8n-workflow-0.119.0" = {
+    "n8n-workflow-0.122.1" = {
       name = "n8n-workflow";
       packageName = "n8n-workflow";
-      version = "0.119.0";
+      version = "0.122.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/n8n-workflow/-/n8n-workflow-0.119.0.tgz";
-        sha512 = "BcSIBSbX1NZ9i8eFFk4Wp0k7esmzH6m8j0RDZK5KwhD4hla4mpx6z6i7kKmAOCuLWjKuY0OMQPEYFWrDEjt0fA==";
+        url = "https://registry.npmjs.org/n8n-workflow/-/n8n-workflow-0.122.1.tgz";
+        sha512 = "8lJuN5AFBEhIBcS8MRt0XuwZ4KXbRGwOA9InlnBoYWFloBdDh+1zDOIxiKJH94xjtihLU9tk3c9mnYPEJqnvDQ==";
       };
     };
     "named-placeholders-1.1.2" = {
@@ -6115,13 +6295,13 @@ let
         sha512 = "wiFWqxoLL3PGVReSZpjLVxyJ1bRqe+KKJVbr4hGs1KWfTZTQyezHFBbuKj9hsizHyGV2ne7EMjHdxEGAybD5SA==";
       };
     };
-    "nan-2.16.0" = {
+    "nan-2.17.0" = {
       name = "nan";
       packageName = "nan";
-      version = "2.16.0";
+      version = "2.17.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nan/-/nan-2.16.0.tgz";
-        sha512 = "UdAqHyFngu7TfQKsCBgAA6pWDkT8MAO7d0jyOecVhN5354xbLqdn8mV9Tat9gepAupm0bt2DbeaSC8vS52MuFA==";
+        url = "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz";
+        sha512 = "2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==";
       };
     };
     "nanoclone-0.2.1" = {
@@ -6223,13 +6403,13 @@ let
         sha512 = "fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==";
       };
     };
-    "node-abi-3.26.0" = {
+    "node-abi-3.28.0" = {
       name = "node-abi";
       packageName = "node-abi";
-      version = "3.26.0";
+      version = "3.28.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-abi/-/node-abi-3.26.0.tgz";
-        sha512 = "jRVtMFTChbi2i/jqo/i2iP9634KMe+7K1v35mIdj3Mn59i5q27ZYhn+sW6npISM/PQg7HrP2kwtRBMmh5Uvzdg==";
+        url = "https://registry.npmjs.org/node-abi/-/node-abi-3.28.0.tgz";
+        sha512 = "fRlDb4I0eLcQeUvGq7IY3xHrSb0c9ummdvDSYWfT9+LKP+3jCKw/tKoqaM7r1BAoiAC6GtwyjaGnOz6B3OtF+A==";
       };
     };
     "node-abort-controller-3.0.1" = {
@@ -6286,22 +6466,22 @@ let
         sha512 = "2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==";
       };
     };
-    "node-html-markdown-1.2.0" = {
+    "node-html-markdown-1.2.2" = {
       name = "node-html-markdown";
       packageName = "node-html-markdown";
-      version = "1.2.0";
+      version = "1.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-html-markdown/-/node-html-markdown-1.2.0.tgz";
-        sha512 = "mGA53bSqo7j62PjmMuFPdO0efNT9pqiGYhQTNVCWkY7PdduRIECJF7n7NOrr5cb+d/js1GdYRLpoTYDwawRk6A==";
+        url = "https://registry.npmjs.org/node-html-markdown/-/node-html-markdown-1.2.2.tgz";
+        sha512 = "VkiTJ2Y9BWscRY0yLm9OYTREvXobmlK7YehdDwIYfDj9VW6MefaFNaQkMTk94U0zyAuCsfLdBsOld54fsNhP9A==";
       };
     };
-    "node-html-parser-5.4.2" = {
+    "node-html-parser-6.1.1" = {
       name = "node-html-parser";
       packageName = "node-html-parser";
-      version = "5.4.2";
+      version = "6.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-html-parser/-/node-html-parser-5.4.2.tgz";
-        sha512 = "RaBPP3+51hPne/OolXxcz89iYvQvKOydaqoePpOgXcrOKZhjVIzmpKZz+Hd/RBO2/zN2q6CNJhQzucVz+u3Jyw==";
+        url = "https://registry.npmjs.org/node-html-parser/-/node-html-parser-6.1.1.tgz";
+        sha512 = "eYYblUeoMg0nR6cYGM4GRb1XncNa9FXEftuKAU1qyMIr6rXVtNyUKduvzZtkqFqSHVByq2lLjC7WO8tz7VDmnA==";
       };
     };
     "node-ssh-12.0.5" = {
@@ -7051,13 +7231,13 @@ let
         sha512 = "His3Fh17Z4eg7oANLob6ZvH8xIVen3phEZh2QuyrIl4dQSDVEabNducv6ysROKpDNPSD+12tONZVWfSgMvDD9w==";
       };
     };
-    "pg-promise-10.12.0" = {
+    "pg-promise-10.12.1" = {
       name = "pg-promise";
       packageName = "pg-promise";
-      version = "10.12.0";
+      version = "10.12.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pg-promise/-/pg-promise-10.12.0.tgz";
-        sha512 = "7uN64iEHrhtRcOaU/AT3925S20JzQJG2nWVK2IUz5SlhB1eNdkXjAYoQtei+5kLJo81mOWcFq7x9J9VRldp0ig==";
+        url = "https://registry.npmjs.org/pg-promise/-/pg-promise-10.12.1.tgz";
+        sha512 = "SiJkBUDGq7PNfJFJbWferodsSH+vLrhte0Q0kVgQbwlNYeKmp9Hhkr+357+5DWEuBGOHhSu1UQffSSf5HVqRtA==";
       };
     };
     "pg-protocol-1.5.0" = {
@@ -7186,13 +7366,13 @@ let
         sha512 = "epKaq3TTfTzXcxBxjpoKYMcTTcAX8Rykus6QZu77XNhJuRHSRxMd+JJrbX/3PFI0opFGSN0BabbAYCbGxbu0mA==";
       };
     };
-    "postcss-8.4.17" = {
+    "postcss-8.4.18" = {
       name = "postcss";
       packageName = "postcss";
-      version = "8.4.17";
+      version = "8.4.18";
       src = fetchurl {
-        url = "https://registry.npmjs.org/postcss/-/postcss-8.4.17.tgz";
-        sha512 = "UNxNOLQydcOFi41yHNMcKRZ39NeXlr8AxGuZJsdub8vIb12fHzcq37DTU/QtbI6WLxNg2gF9Z+8qtRwTj1UI1Q==";
+        url = "https://registry.npmjs.org/postcss/-/postcss-8.4.18.tgz";
+        sha512 = "Wi8mWhncLJm11GATDaQKobXSNEYGUHeQLiQqDFG1qQ5UTDPTEvKw0Xt5NsTpktGTwLps3ByrWsBrG0rB8YQ9oA==";
       };
     };
     "postgres-array-1.0.3" = {
@@ -7753,13 +7933,13 @@ let
         sha512 = "MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==";
       };
     };
-    "regenerator-runtime-0.13.9" = {
+    "regenerator-runtime-0.13.10" = {
       name = "regenerator-runtime";
       packageName = "regenerator-runtime";
-      version = "0.13.9";
+      version = "0.13.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz";
-        sha512 = "p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==";
+        url = "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.10.tgz";
+        sha512 = "KepLsg4dU12hryUO7bp/axHAKvwGOCV0sGloQtpagJ12ai+ojVDqkeGSiRX1zlq+kjIMZ1t7gpze+26QqtdGqw==";
       };
     };
     "regexp.prototype.flags-1.4.3" = {
@@ -8005,13 +8185,13 @@ let
         sha512 = "JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==";
       };
     };
-    "safe-stable-stringify-2.4.0" = {
+    "safe-stable-stringify-2.4.1" = {
       name = "safe-stable-stringify";
       packageName = "safe-stable-stringify";
-      version = "2.4.0";
+      version = "2.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.0.tgz";
-        sha512 = "eehKHKpab6E741ud7ZIMcXhKcP6TSIezPkNZhy5U8xC6+VvrRdUA2tMgxGxaGl4cz7c2Ew5+mg5+wNB16KQqrA==";
+        url = "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.1.tgz";
+        sha512 = "dVHE6bMtS/bnL2mwualjc6IxEv1F+OCUpA46pKUj6F8uDbUM0jCCulPqRNPSnWwGNKx5etqMjZYdXtrm5KJZGA==";
       };
     };
     "safer-buffer-2.1.2" = {
@@ -8707,6 +8887,15 @@ let
         sha512 = "fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==";
       };
     };
+    "style-mod-4.0.0" = {
+      name = "style-mod";
+      packageName = "style-mod";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/style-mod/-/style-mod-4.0.0.tgz";
+        sha512 = "OPhtyEjyyN9x3nhPsu76f52yUGXiZcgvsrFVtvTkyGRQJ0XK+GPc6ov1z+lRpbeabka+MYEQxOYRnt5nF30aMw==";
+      };
+    };
     "supports-color-7.2.0" = {
       name = "supports-color";
       packageName = "supports-color";
@@ -8743,13 +8932,13 @@ let
         sha512 = "ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==";
       };
     };
-    "swagger-ui-dist-4.14.2" = {
+    "swagger-ui-dist-4.15.2" = {
       name = "swagger-ui-dist";
       packageName = "swagger-ui-dist";
-      version = "4.14.2";
+      version = "4.15.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/swagger-ui-dist/-/swagger-ui-dist-4.14.2.tgz";
-        sha512 = "kOIU7Ts3TrXDLb3/c9jRe4qGp8O3bRT19FFJA8wJfrRFkcK/4atPn3krhtBVJ57ZkNNofworXHxuYwmaisXBdg==";
+        url = "https://registry.npmjs.org/swagger-ui-dist/-/swagger-ui-dist-4.15.2.tgz";
+        sha512 = "sanLAioshpa+Q0PpPxD86uo4labSqeIxtjLoC7xoce3HTnECPoQwY7PUVOiGMZ4dnEnROZPLUTloCEM86jZc1Q==";
       };
     };
     "swagger-ui-express-4.5.0" = {
@@ -9346,22 +9535,22 @@ let
         sha512 = "WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==";
       };
     };
-    "urllib-2.39.1" = {
+    "urllib-2.40.0" = {
       name = "urllib";
       packageName = "urllib";
-      version = "2.39.1";
+      version = "2.40.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/urllib/-/urllib-2.39.1.tgz";
-        sha512 = "c3sLtY8uhc/WoyJt/nNcEwO4fFC9sFYMQmU5NKoUz9OqUYrPSbYFPflocZCA5oCTavky9weK+YA2EHjsva9AwQ==";
+        url = "https://registry.npmjs.org/urllib/-/urllib-2.40.0.tgz";
+        sha512 = "XDZjoijtzsbkXTXgM+A/sJM002nwoYsc46YOYr6MNH2jUUw1nCBf2ywT1WaPsVEWJX4Yr+9isGmYj4+yofFn9g==";
       };
     };
-    "utf-8-validate-5.0.9" = {
+    "utf-8-validate-5.0.10" = {
       name = "utf-8-validate";
       packageName = "utf-8-validate";
-      version = "5.0.9";
+      version = "5.0.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.9.tgz";
-        sha512 = "Yek7dAy0v3Kl0orwMlvi7TPtiCNrdfHNd7Gcc/pLq4BLXqfAmd0J7OWMizUQnTTJsyjKn02mU7anqwfmUP4J8Q==";
+        url = "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.10.tgz";
+        sha512 = "Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ==";
       };
     };
     "utf7-1.0.2" = {
@@ -9382,13 +9571,13 @@ let
         sha512 = "QXo+O/QkLP/x1nyi54uQiG0XrODxdysuQvE5dtVqv7F5K2Qb6FsN+qbr6KhF5wQ20tfcV3VQp0/2x1e1MRSPWg==";
       };
     };
-    "util-0.12.4" = {
+    "util-0.12.5" = {
       name = "util";
       packageName = "util";
-      version = "0.12.4";
+      version = "0.12.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/util/-/util-0.12.4.tgz";
-        sha512 = "bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==";
+        url = "https://registry.npmjs.org/util/-/util-0.12.5.tgz";
+        sha512 = "kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==";
       };
     };
     "util-deprecate-1.0.2" = {
@@ -9409,15 +9598,6 @@ let
         sha512 = "/s3UsZUrIfa6xDhr7zZhnE9SLQ5RIXyYfiVnMMyMDzOc8WhWN4Nbh36H842OyurKbCDAesZOJaVyvmSl6fhGQw==";
       };
     };
-    "utility-0.1.11" = {
-      name = "utility";
-      packageName = "utility";
-      version = "0.1.11";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/utility/-/utility-0.1.11.tgz";
-        sha512 = "epFsJ71+/yC7MKMX7CM9azP31QBIQhywkiBUj74i/T3Y2TXtEor26QBkat7lGamrrNTr5CBI1imd/8F0Bmqw4g==";
-      };
-    };
     "utility-1.17.0" = {
       name = "utility";
       packageName = "utility";
@@ -9517,13 +9697,13 @@ let
         sha512 = "PFG8iJRSjvvBdisowQ7iVF580DXb1uCIiGaXgm7tynMR1uTBlv7UJlB1zdv5KJ+Tmq1f0Upnj3fayoEOPpCBKg==";
       };
     };
-    "vue-2.6.14" = {
+    "vue-2.7.13" = {
       name = "vue";
       packageName = "vue";
-      version = "2.6.14";
+      version = "2.7.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vue/-/vue-2.6.14.tgz";
-        sha512 = "x2284lgYvjOMj3Za7kqzRcUSxBboHqtgRE2zlos1qWaOye5yUmHn42LB1250NJBLRwEcdrB0JRwyPTEPhfQjiQ==";
+        url = "https://registry.npmjs.org/vue/-/vue-2.7.13.tgz";
+        sha512 = "QnM6ULTNnPmn71eUO+4hdjfBIA3H0GLsBnchnI/kS678tjI45GOUZhXd0oP/gX9isikXz1PAzSnkPspp9EUNfQ==";
       };
     };
     "vue-agile-2.0.0" = {
@@ -9589,13 +9769,13 @@ let
         sha512 = "VYXZQLtjuvKxxcshuRAwjHnciqZVoXAjTjcqBTz4rKc8qih9g9pI3hbDjmqXaHdgL3v8pV6P8Z335XvHzESxLQ==";
       };
     };
-    "vue-template-compiler-2.6.14" = {
+    "vue-template-compiler-2.7.13" = {
       name = "vue-template-compiler";
       packageName = "vue-template-compiler";
-      version = "2.6.14";
+      version = "2.7.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.6.14.tgz";
-        sha512 = "ODQS1SyMbjKoO1JBJZojSw6FE4qnh9rIpUZn2EUT86FKizx9uH5z6uXiIrm4/Nb/gwxTi/o17ZDEGWAXHvtC7g==";
+        url = "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.13.tgz";
+        sha512 = "jYM6TClwDS9YqP48gYrtAtaOhRKkbYmbzE+Q51gX5YDr777n7tNI/IZk4QV4l/PjQPNh/FVa/E92sh/RqKMrog==";
       };
     };
     "vue-typed-mixins-0.2.0" = {
@@ -9643,6 +9823,15 @@ let
         sha512 = "ETW44IqCgBpVomy520DT5jf8n0zoCac+sxWnn+hMe/CzaSejb/eVw2YToiXYX+Ex/AuHHia28vWTq4goAexFbw==";
       };
     };
+    "w3c-keyname-2.2.6" = {
+      name = "w3c-keyname";
+      packageName = "w3c-keyname";
+      version = "2.2.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/w3c-keyname/-/w3c-keyname-2.2.6.tgz";
+        sha512 = "f+fciywl1SJEniZHD6H+kUO8gOnwIr7f4ijKA6+ZvJFjeGi1r4PDLl53Ayud9O/rk64RqgoQine0feoeOU0kXg==";
+      };
+    };
     "webidl-conversions-3.0.1" = {
       name = "webidl-conversions";
       packageName = "webidl-conversions";
@@ -10027,10 +10216,10 @@ in
   n8n = nodeEnv.buildNodePackage {
     name = "n8n";
     packageName = "n8n";
-    version = "0.197.1";
+    version = "0.200.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/n8n/-/n8n-0.197.1.tgz";
-      sha512 = "uswTJAfyDqMSBT0HZrNFFVKQ/s/FiaQl97+Pdl/MdrC74scPNSTBUrS/L2X08LR0UADO6ByPpB7uOrj+w29pdg==";
+      url = "https://registry.npmjs.org/n8n/-/n8n-0.200.1.tgz";
+      sha512 = "g6RFonJAuvaNyQ6t3DfDHnV4T5NT4obfkRzELJ4S0DnT5jq68n1UsYmbPII8rhmdZJsK+d67prGlKUsnyZ3VxQ==";
     };
     dependencies = [
       (sources."@apidevtools/json-schema-ref-parser-9.0.9" // {
@@ -10115,16 +10304,24 @@ in
         ];
       })
       sources."@azure/ms-rest-nodeauth-3.1.1"
-      sources."@azure/msal-browser-2.29.0"
-      sources."@azure/msal-common-7.5.0"
-      sources."@azure/msal-node-1.14.1"
-      (sources."@azure/storage-blob-12.11.0" // {
+      sources."@azure/msal-browser-2.30.0"
+      sources."@azure/msal-common-7.6.0"
+      sources."@azure/msal-node-1.14.2"
+      (sources."@azure/storage-blob-12.12.0" // {
         dependencies = [
           sources."@azure/core-tracing-1.0.0-preview.13"
           sources."tslib-2.4.0"
         ];
       })
-      sources."@babel/runtime-7.19.4"
+      sources."@babel/parser-7.20.0"
+      sources."@babel/runtime-7.20.0"
+      sources."@codemirror/autocomplete-6.3.0"
+      sources."@codemirror/commands-6.1.2"
+      sources."@codemirror/lang-javascript-6.1.1"
+      sources."@codemirror/language-6.3.0"
+      sources."@codemirror/lint-6.0.0"
+      sources."@codemirror/state-6.1.2"
+      sources."@codemirror/view-6.4.0"
       sources."@colors/colors-1.5.0"
       sources."@curlconverter/yargs-0.0.2"
       sources."@curlconverter/yargs-parser-0.0.1"
@@ -10134,7 +10331,7 @@ in
           sources."kuler-2.0.0"
         ];
       })
-      sources."@fontsource/open-sans-4.5.12"
+      sources."@fontsource/open-sans-4.5.13"
       sources."@fortawesome/fontawesome-common-types-0.3.0"
       sources."@fortawesome/fontawesome-svg-core-1.3.0"
       (sources."@fortawesome/free-regular-svg-icons-6.2.0" // {
@@ -10156,11 +10353,15 @@ in
           sources."string_decoder-0.10.31"
         ];
       })
-      sources."@js-joda/core-5.4.1"
+      sources."@js-joda/core-5.4.2"
       sources."@jsdevtools/ono-7.1.3"
       sources."@kafkajs/confluent-schema-registry-1.0.6"
       sources."@kwsites/file-exists-1.1.1"
       sources."@kwsites/promise-deferred-1.1.1"
+      sources."@lezer/common-1.0.1"
+      sources."@lezer/highlight-1.1.2"
+      sources."@lezer/javascript-1.0.2"
+      sources."@lezer/lr-1.2.3"
       sources."@mapbox/node-pre-gyp-1.0.10"
       sources."@n8n_io/riot-tmpl-1.0.1"
       sources."@nodelib/fs.scandir-2.1.5"
@@ -10178,7 +10379,7 @@ in
           sources."tslib-2.4.0"
         ];
       })
-      (sources."@oclif/core-1.16.5" // {
+      (sources."@oclif/core-1.19.2" // {
         dependencies = [
           sources."supports-color-8.1.1"
           sources."tslib-2.4.0"
@@ -10203,7 +10404,7 @@ in
       sources."@oclif/screen-3.0.2"
       sources."@opentelemetry/api-1.2.0"
       sources."@rudderstack/rudder-sdk-node-1.0.6"
-      (sources."@sap/hana-client-2.14.18" // {
+      (sources."@sap/hana-client-2.14.22" // {
         dependencies = [
           sources."debug-3.1.0"
           sources."ms-2.0.0"
@@ -10212,7 +10413,7 @@ in
       sources."@segment/loosely-validate-event-2.0.0"
       sources."@selderee/plugin-htmlparser2-0.6.0"
       sources."@servie/events-1.0.0"
-      sources."@sqltools/formatter-1.2.3"
+      sources."@sqltools/formatter-1.2.5"
       sources."@techteamer/ocsp-1.0.0"
       sources."@tediousjs/connection-string-0.3.0"
       sources."@tokenizer/token-0.3.0"
@@ -10223,13 +10424,13 @@ in
       sources."@types/express-4.17.14"
       sources."@types/express-jwt-0.0.42"
       sources."@types/express-serve-static-core-4.17.31"
-      sources."@types/express-unless-0.5.3"
-      sources."@types/js-nacl-1.3.0"
+      sources."@types/express-unless-2.0.1"
+      sources."@types/js-nacl-1.3.1"
       sources."@types/json-schema-7.0.11"
       sources."@types/lodash-4.14.186"
       sources."@types/mime-3.0.1"
       sources."@types/multer-1.4.7"
-      sources."@types/node-18.8.3"
+      sources."@types/node-18.11.7"
       (sources."@types/node-fetch-2.6.2" // {
         dependencies = [
           sources."form-data-3.0.1"
@@ -10243,13 +10444,14 @@ in
       sources."@types/tunnel-0.0.3"
       sources."@types/webidl-conversions-7.0.0"
       sources."@types/whatwg-url-8.2.2"
-      sources."@xmldom/xmldom-0.7.5"
+      sources."@vue/compiler-sfc-2.7.13"
+      sources."@xmldom/xmldom-0.7.6"
       sources."a-sync-waterfall-1.0.1"
       sources."abbrev-1.1.1"
       sources."abort-controller-3.0.0"
       sources."accepts-1.3.8"
       sources."access-control-1.0.1"
-      sources."acorn-8.8.0"
+      sources."acorn-8.8.1"
       sources."acorn-walk-8.2.0"
       (sources."adal-node-0.2.3" // {
         dependencies = [
@@ -10257,7 +10459,6 @@ in
           sources."uuid-3.4.0"
         ];
       })
-      sources."address-1.2.1"
       sources."adler-32-1.2.0"
       sources."agent-base-6.0.2"
       (sources."agentkeepalive-4.2.1" // {
@@ -10321,7 +10522,7 @@ in
       })
       sources."available-typed-arrays-1.0.5"
       sources."avsc-5.7.6"
-      (sources."aws-sdk-2.1231.0" // {
+      (sources."aws-sdk-2.1242.0" // {
         dependencies = [
           sources."buffer-4.9.2"
           sources."events-1.1.1"
@@ -10395,7 +10596,7 @@ in
       sources."buffer-from-1.1.2"
       sources."buffer-more-ints-1.0.0"
       sources."buffer-writer-2.0.0"
-      sources."bufferutil-4.0.6"
+      sources."bufferutil-4.0.7"
       sources."bull-3.29.3"
       sources."busboy-1.6.0"
       sources."byte-length-1.0.2"
@@ -10504,9 +10705,10 @@ in
       sources."cookie-parser-1.4.6"
       sources."cookie-signature-1.0.6"
       sources."copy-to-2.0.1"
-      sources."core-js-3.25.5"
+      sources."core-js-3.26.0"
       sources."core-util-is-1.0.3"
       sources."crc-32-1.2.2"
+      sources."crelt-1.0.5"
       sources."cron-1.7.2"
       sources."cron-parser-2.18.0"
       (sources."cross-spawn-6.0.5" // {
@@ -10520,6 +10722,7 @@ in
       sources."css-select-4.3.0"
       sources."css-what-6.1.0"
       sources."cssfilter-0.0.10"
+      sources."csstype-3.1.1"
       sources."curlconverter-3.21.0"
       sources."currency-codes-2.1.0"
       sources."dashdash-1.14.1"
@@ -10552,11 +10755,7 @@ in
       sources."detect-libc-2.0.1"
       sources."diagnostics-1.1.1"
       sources."difflib-0.2.4"
-      (sources."digest-header-0.0.1" // {
-        dependencies = [
-          sources."utility-0.1.11"
-        ];
-      })
+      sources."digest-header-1.0.0"
       sources."dir-glob-3.0.1"
       sources."discontinuous-range-1.0.0"
       sources."dom-iterator-1.0.0"
@@ -10626,6 +10825,7 @@ in
           sources."path-to-regexp-6.2.1"
         ];
       })
+      sources."express-unless-2.1.3"
       sources."extend-3.0.2"
       sources."extend-shallow-2.0.1"
       (sources."external-editor-3.1.0" // {
@@ -10766,7 +10966,7 @@ in
       sources."humanize-ms-1.2.1"
       sources."hyperlinker-1.0.0"
       sources."iconv-lite-0.6.3"
-      sources."ics-2.40.0"
+      sources."ics-2.41.0"
       sources."ieee754-1.2.1"
       sources."ignore-5.2.0"
       (sources."imap-0.8.19" // {
@@ -10802,7 +11002,7 @@ in
       sources."is-boolean-object-1.1.2"
       sources."is-buffer-1.1.6"
       sources."is-callable-1.2.7"
-      sources."is-core-module-2.10.0"
+      sources."is-core-module-2.11.0"
       sources."is-date-object-1.0.5"
       sources."is-docker-2.2.1"
       sources."is-extendable-0.1.1"
@@ -10837,7 +11037,7 @@ in
       sources."is-windows-1.0.2"
       sources."is-wsl-2.2.0"
       sources."isarray-1.0.0"
-      sources."isbot-3.6.1"
+      sources."isbot-3.6.2"
       sources."isexe-2.0.0"
       sources."iso-639-1-2.1.15"
       sources."isstream-0.1.2"
@@ -10880,7 +11080,7 @@ in
       sources."levn-0.3.0"
       sources."libbase64-1.2.1"
       sources."libmime-5.1.0"
-      sources."libphonenumber-js-1.10.13"
+      sources."libphonenumber-js-1.10.14"
       sources."libpq-1.8.12"
       sources."libqp-1.1.0"
       sources."limiter-1.1.5"
@@ -10934,7 +11134,7 @@ in
           sources."yallist-2.1.2"
         ];
       })
-      sources."luxon-2.5.0"
+      sources."luxon-2.3.2"
       (sources."mailparser-3.5.0" // {
         dependencies = [
           sources."nodemailer-6.7.3"
@@ -10973,7 +11173,7 @@ in
           sources."brace-expansion-1.1.11"
         ];
       })
-      sources."minimist-1.2.6"
+      sources."minimist-1.2.7"
       sources."minipass-3.3.5"
       sources."minipass-collect-1.0.2"
       sources."minipass-fetch-1.4.1"
@@ -10990,9 +11190,9 @@ in
         ];
       })
       sources."moment-2.29.4"
-      sources."moment-timezone-0.5.37"
+      sources."moment-timezone-0.5.38"
       sources."monaco-editor-0.30.1"
-      (sources."mongodb-4.10.0" // {
+      (sources."mongodb-4.11.0" // {
         dependencies = [
           sources."denque-2.1.0"
         ];
@@ -11026,22 +11226,22 @@ in
         ];
       })
       sources."mz-2.7.0"
-      sources."n8n-core-0.137.0"
-      sources."n8n-design-system-0.37.0"
-      sources."n8n-editor-ui-0.163.1"
-      (sources."n8n-nodes-base-0.195.1" // {
+      sources."n8n-core-0.140.1"
+      sources."n8n-design-system-0.40.0"
+      sources."n8n-editor-ui-0.166.1"
+      (sources."n8n-nodes-base-0.198.1" // {
         dependencies = [
           sources."chokidar-3.5.2"
         ];
       })
-      sources."n8n-workflow-0.119.0"
+      sources."n8n-workflow-0.122.1"
       (sources."named-placeholders-1.1.2" // {
         dependencies = [
           sources."lru-cache-4.1.5"
           sources."yallist-2.1.2"
         ];
       })
-      sources."nan-2.16.0"
+      sources."nan-2.17.0"
       sources."nanoclone-0.2.1"
       sources."nanoid-3.3.4"
       sources."napi-build-utils-1.0.2"
@@ -11061,7 +11261,7 @@ in
           sources."tslib-2.4.0"
         ];
       })
-      sources."node-abi-3.26.0"
+      sources."node-abi-3.28.0"
       sources."node-abort-controller-3.0.1"
       sources."node-addon-api-4.3.0"
       sources."node-ensure-0.0.0"
@@ -11076,8 +11276,16 @@ in
         ];
       })
       sources."node-gyp-build-4.5.0"
-      sources."node-html-markdown-1.2.0"
-      sources."node-html-parser-5.4.2"
+      sources."node-html-markdown-1.2.2"
+      (sources."node-html-parser-6.1.1" // {
+        dependencies = [
+          sources."css-select-5.1.0"
+          sources."dom-serializer-2.0.0"
+          sources."domhandler-5.0.3"
+          sources."domutils-3.0.1"
+          sources."entities-4.4.0"
+        ];
+      })
       sources."node-ssh-12.0.5"
       sources."nodeify-1.0.1"
       sources."nodemailer-6.8.0"
@@ -11186,7 +11394,7 @@ in
         ];
       })
       sources."pg-pool-3.5.2"
-      sources."pg-promise-10.12.0"
+      sources."pg-promise-10.12.1"
       sources."pg-protocol-1.5.0"
       sources."pg-query-stream-4.2.4"
       sources."pg-types-2.2.0"
@@ -11204,7 +11412,7 @@ in
       sources."popsicle-transport-http-1.2.1"
       sources."popsicle-transport-xhr-2.0.0"
       sources."popsicle-user-agent-1.0.0"
-      sources."postcss-8.4.17"
+      sources."postcss-8.4.18"
       sources."postgres-array-2.0.0"
       sources."postgres-bytea-1.0.0"
       sources."postgres-date-1.0.7"
@@ -11293,7 +11501,7 @@ in
       sources."redis-errors-1.2.0"
       sources."redis-parser-3.0.0"
       sources."reflect-metadata-0.1.13"
-      sources."regenerator-runtime-0.13.9"
+      sources."regenerator-runtime-0.13.10"
       sources."regexp.prototype.flags-1.4.3"
       sources."reinterval-1.1.0"
       sources."remove-trailing-separator-1.1.0"
@@ -11335,7 +11543,7 @@ in
       sources."rxjs-6.6.7"
       sources."safe-buffer-5.2.1"
       sources."safe-regex-test-1.0.0"
-      sources."safe-stable-stringify-2.4.0"
+      sources."safe-stable-stringify-2.4.1"
       sources."safer-buffer-2.1.2"
       (sources."sanitize-html-2.7.0" // {
         dependencies = [
@@ -11450,10 +11658,11 @@ in
       sources."strip-ansi-6.0.1"
       sources."strip-json-comments-2.0.1"
       sources."strtok3-6.3.0"
+      sources."style-mod-4.0.0"
       sources."supports-color-7.2.0"
       sources."supports-hyperlinks-2.3.0"
       sources."supports-preserve-symlinks-flag-1.0.0"
-      sources."swagger-ui-dist-4.14.2"
+      sources."swagger-ui-dist-4.15.2"
       sources."swagger-ui-express-4.5.0"
       (sources."tar-6.1.11" // {
         dependencies = [
@@ -11474,7 +11683,7 @@ in
       sources."tdigest-0.1.2"
       (sources."tedious-14.7.0" // {
         dependencies = [
-          sources."bl-5.0.0"
+          sources."bl-5.1.0"
           sources."buffer-6.0.3"
           sources."readable-stream-3.6.0"
           sources."sprintf-js-1.1.2"
@@ -11569,7 +11778,7 @@ in
         ];
       })
       sources."url-parse-1.5.10"
-      (sources."urllib-2.39.1" // {
+      (sources."urllib-2.40.0" // {
         dependencies = [
           sources."debug-2.6.9"
           sources."iconv-lite-0.4.24"
@@ -11578,14 +11787,14 @@ in
           sources."statuses-1.5.0"
         ];
       })
-      sources."utf-8-validate-5.0.9"
+      sources."utf-8-validate-5.0.10"
       (sources."utf7-1.0.2" // {
         dependencies = [
           sources."semver-5.3.0"
         ];
       })
       sources."utf8-2.1.2"
-      sources."util-0.12.4"
+      sources."util-0.12.5"
       sources."util-deprecate-1.0.2"
       sources."util.promisify-1.1.1"
       sources."utility-1.17.0"
@@ -11601,7 +11810,7 @@ in
         ];
       })
       sources."vm2-3.9.11"
-      sources."vue-2.6.14"
+      sources."vue-2.7.13"
       sources."vue-agile-2.0.0"
       sources."vue-color-2.8.1"
       sources."vue-fragment-1.5.1"
@@ -11609,12 +11818,13 @@ in
       sources."vue-json-pretty-1.9.2"
       sources."vue-prism-editor-0.3.0"
       sources."vue-router-3.6.5"
-      sources."vue-template-compiler-2.6.14"
+      sources."vue-template-compiler-2.7.13"
       sources."vue-typed-mixins-0.2.0"
       sources."vue2-boring-avatars-0.3.4"
       sources."vue2-teleport-1.0.1"
       sources."vue2-touch-events-3.2.2"
       sources."vuex-3.6.2"
+      sources."w3c-keyname-2.2.6"
       sources."webidl-conversions-3.0.1"
       sources."whatwg-url-5.0.0"
       sources."which-1.3.1"
diff --git a/pkgs/applications/networking/newsreaders/liferea/default.nix b/pkgs/applications/networking/newsreaders/liferea/default.nix
index 15b3c8a976a74..b96d906fc96bd 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-RC1";
+  version = "1.14-RC2";
 
   src = fetchurl {
     url = "https://github.com/lwindolf/${pname}/releases/download/v${version}/${pname}-${version}.tar.bz2";
-    sha256 = "cBtS+Km2d1n5Yl0wrQkN3Pg6OxSzhG7oVu7ZJ5RQuRQ=";
+    sha256 = "UTK82s+7bzL+SyT40qDsqX8KTkITTpWtR/0VY/+OpcA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/qv2ray/default.nix b/pkgs/applications/networking/qv2ray/default.nix
index 62327a8e9a898..3e6dfb1a7d22e 100644
--- a/pkgs/applications/networking/qv2ray/default.nix
+++ b/pkgs/applications/networking/qv2ray/default.nix
@@ -11,7 +11,6 @@
 , openssl
 , pkg-config
 , c-ares
-, abseil-cpp
 , libGL
 , zlib
 , curl
@@ -51,7 +50,6 @@ mkDerivation rec {
     grpc
     protobuf
     openssl
-    abseil-cpp
     c-ares
   ];
 
diff --git a/pkgs/applications/networking/resilio-sync/default.nix b/pkgs/applications/networking/resilio-sync/default.nix
index 35b4fa3aef43a..3d12b11b51410 100644
--- a/pkgs/applications/networking/resilio-sync/default.nix
+++ b/pkgs/applications/networking/resilio-sync/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, ... }:
+{ lib, stdenv, fetchurl, libxcrypt, ... }:
 
 stdenv.mkDerivation rec {
   pname = "resilio-sync";
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     install -D rslsync "$out/bin/rslsync"
     patchelf \
       --interpreter "$(< $NIX_CC/nix-support/dynamic-linker)" \
-      --set-rpath ${lib.makeLibraryPath [ stdenv.cc.libc ]} "$out/bin/rslsync"
+      --set-rpath ${lib.makeLibraryPath [ stdenv.cc.libc libxcrypt ]} "$out/bin/rslsync"
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/networking/syncthing/default.nix b/pkgs/applications/networking/syncthing/default.nix
index 8ceca271f11af..4bfe3efec1217 100644
--- a/pkgs/applications/networking/syncthing/default.nix
+++ b/pkgs/applications/networking/syncthing/default.nix
@@ -4,16 +4,16 @@ let
   common = { stname, target, postInstall ? "" }:
     buildGoModule rec {
       pname = stname;
-      version = "1.22.0";
+      version = "1.22.1";
 
       src = fetchFromGitHub {
         owner = "syncthing";
         repo = "syncthing";
         rev = "v${version}";
-        hash = "sha256-jAXxgSm0eEdFylukYGhIGtA0KniMiln1BIfuGZoboSM=";
+        hash = "sha256-XndTMPO1lN6bsjeHbvrZ+i4VwaKoUOcWOfbVQ2E7/eo=";
       };
 
-      vendorSha256 = "sha256-yabX1A4Q/0ZQFMCrvO5oCI5y0o/dqQy3IplxZ6SsHuw=";
+      vendorSha256 = "sha256-ZxA05K5zKmQIm2R525DNXpGXqwM33j3PCuPN5d2qcj8=";
 
       doCheck = false;
 
diff --git a/pkgs/applications/networking/synology-cloud-sync-decryption-tool/default.nix b/pkgs/applications/networking/synology-cloud-sync-decryption-tool/default.nix
new file mode 100644
index 0000000000000..3ceb5c0e1afd2
--- /dev/null
+++ b/pkgs/applications/networking/synology-cloud-sync-decryption-tool/default.nix
@@ -0,0 +1,43 @@
+{ lib, writeScript, qt5, fetchurl, autoPatchelfHook }:
+
+qt5.mkDerivation rec {
+  pname = "synology-cloud-sync-decryption-tool";
+  version = "027";
+
+  src = fetchurl {
+    url = "https://global.download.synology.com/download/Utility/SynologyCloudSyncDecryptionTool/${version}/Linux/x86_64/SynologyCloudSyncDecryptionTool-${version}_x64.tar.gz";
+    sha256 = "sha256-EWxADvkfhnMwHIauJj3pH6SvSkkrc4cwAhsf1pWOOWQ=";
+  };
+
+  nativeBuildInputs = [ autoPatchelfHook ];
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/bin
+    cp $NIX_BUILD_TOP/SynologyCloudSyncDecryptionTool $out/bin
+
+    runHook postInstall
+  '';
+
+  passthru.updateScript = writeScript "update-synology-cloud-sync-decryption-tool" ''
+    #!/usr/bin/env nix-shell
+    #!nix-shell -i bash -p curl common-updater-scripts
+
+    set -euo pipefail
+
+    version="$(curl -s https://www.synology.com/en-uk/releaseNote/SynologyCloudSyncDecryptionTool \
+             | grep -oP '(?<=data-version=")\d+' \
+             | head -1)"
+    update-source-version synology-cloud-sync-decryption-tool "$version"
+  '';
+
+  meta = with lib; {
+    description = "A desktop tool to decrypt data encrypted by Cloud Sync.";
+    homepage = "https://kb.synology.com/en-global/DSM/help/SynologyCloudSyncDecryptionTool/synologycloudsyncdecryptiontool";
+    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
+    license = licenses.unfree;
+    maintainers = with maintainers; [ kalbasit ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/applications/office/fava/default.nix b/pkgs/applications/office/fava/default.nix
index aea4a16e46b9f..fce5bb1496417 100644
--- a/pkgs/applications/office/fava/default.nix
+++ b/pkgs/applications/office/fava/default.nix
@@ -2,12 +2,12 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "fava";
-  version = "1.23";
+  version = "1.23.1";
   format = "pyproject";
 
   src = python3.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "sha256-dwJKSQiuggnseEbALSrT051Me/z1jpj/BjuxN0v5dpU=";
+    sha256 = "sha256-Uw8UIJa+Dtsy+o31I1ynLyhZrFNX42NFRXu1O2ISbzU=";
   };
 
   nativeBuildInputs = with python3.pkgs; [ setuptools-scm ];
diff --git a/pkgs/applications/office/karlender/default.nix b/pkgs/applications/office/karlender/default.nix
index 44cd2ed0051f9..4c3735f77d5c3 100644
--- a/pkgs/applications/office/karlender/default.nix
+++ b/pkgs/applications/office/karlender/default.nix
@@ -11,22 +11,23 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "karlender";
-  version = "0.6.2";
+  version = "0.7.1";
 
   src = fetchFromGitLab {
-    owner = "loers";
-    repo = "karlender";
+    owner = "floers";
+    repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-YF46C+Vz7eGl4lqOQXqiQqaa6ieo1p8l6QCh4oNSJEg=";
+    hash = "sha256-dgxhXxtwQvaWMLCh8ac67L+R6jnJQdFzoyWKyrboPTk=";
   };
 
-  cargoSha256 = "sha256-Kx5K2tp5PAQWac8LVrmOsk8Qf9m34SJ1vyfv7Ef2Wr0=";
+  cargoHash = "sha256-DsayK3wk2BVG2tqijWWQqUv5uPb/lcZXmwy8pbmd430=";
 
   nativeBuildInputs = [
     pkg-config
     wrapGAppsHook4
     glib
   ];
+
   buildInputs = [
     gtk4
     libadwaita
@@ -52,7 +53,7 @@ rustPlatform.buildRustPackage rec {
 
   meta = with lib; {
     description = "Mobile-friendly GTK calendar application";
-    homepage = "https://gitlab.com/loers/karlender";
+    homepage = "https://gitlab.com/floers/karlender";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ chuangzhu ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/office/mmex/default.nix b/pkgs/applications/office/mmex/default.nix
index 14b97a0b7adbf..53d4dc4261ef7 100644
--- a/pkgs/applications/office/mmex/default.nix
+++ b/pkgs/applications/office/mmex/default.nix
@@ -1,33 +1,73 @@
-{ lib, stdenv, fetchFromGitHub, sqlite, wxGTK30, gettext, wrapGAppsHook }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, gettext
+, git
+, makeWrapper
+, lsb-release
+, pkg-config
+, wrapGAppsHook
+, curl
+, sqlite
+, wxGTK
+, gtk3
+, libobjc
+}:
 
 stdenv.mkDerivation rec {
   pname = "money-manager-ex";
-  version = "1.3.3";
+  version = "1.6.0";
 
   src = fetchFromGitHub {
     owner = "moneymanagerex";
     repo = "moneymanagerex";
-    rev = "refs/tags/v${version}";
-    sha256 = "sha256-5NgkP9gY4eDBoKSC/IaXiHoiz+ZdU4c/iGAzPf5IlmQ=";
+    rev = "v${version}";
+    fetchSubmodules = true;
+    sha256 = "sha256-ADhTz6OMntgDg3TcAlf3lGBFb+fdZ0Lw7+UYYY1RD8M=";
   };
 
+  postPatch = lib.optionalString (stdenv.isDarwin && stdenv.isx86_64) ''
+    substituteInPlace src/platfdep_mac.mm \
+      --replace "appearance.name == NSAppearanceNameDarkAqua" "NO"
+  '';
+
   nativeBuildInputs = [
+    cmake
+    gettext
+    git
+    makeWrapper
+    pkg-config
     wrapGAppsHook
+  ] ++ lib.optionals stdenv.isLinux [
+    lsb-release
   ];
 
   buildInputs = [
-    gettext
+    curl
     sqlite
-    wxGTK30
-    wxGTK30.gtk
+    wxGTK
+    gtk3
+  ] ++ lib.optionals stdenv.isDarwin [
+    libobjc
   ];
 
+  NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.cc.isClang [
+    "-Wno-old-style-cast"
+  ]);
+
+  postInstall = lib.optionalString stdenv.isDarwin ''
+    mkdir -p $out/{Applications,bin}
+    mv $out/mmex.app $out/Applications
+    makeWrapper $out/{Applications/mmex.app/Contents/MacOS,bin}/mmex
+  '';
+
   meta = {
     description = "Easy-to-use personal finance software";
     homepage = "https://www.moneymanagerex.org/";
     license = lib.licenses.gpl2Plus;
-    maintainers = with lib.maintainers; [viric];
-    platforms = with lib.platforms; linux;
-    broken = true; # at 2022-11-23
+    maintainers = with lib.maintainers; [ viric ];
+    platforms = with lib.platforms; unix;
+    mainProgram = "mmex";
   };
 }
diff --git a/pkgs/applications/office/paper-note/default.nix b/pkgs/applications/office/paper-note/default.nix
new file mode 100644
index 0000000000000..18ab6250d028b
--- /dev/null
+++ b/pkgs/applications/office/paper-note/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
+}:
+
+stdenv.mkDerivation rec {
+  pname = "paper-note";
+  version = "22.11";
+
+  src = fetchFromGitLab {
+    owner = "posidon_software";
+    repo = "paper";
+    rev = version;
+    hash = "sha256-o5MYagflHE8Aup8CbqauRBrdt3TrSlffs35psYT7hyE=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    vala
+    pkg-config
+    wrapGAppsHook4
+    appstream-glib
+    desktop-file-utils
+    blueprint-compiler
+  ];
+
+  buildInputs = [
+    gtk4
+    libadwaita
+    libgee
+    gtksourceview5
+  ];
+
+  postInstall = ''
+    ln -s $out/bin/io.posidon.Paper $out/bin/paper
+  '';
+
+  meta = with lib; {
+    description = "Take notes in Markdown";
+    homepage = "https://posidon.io/paper/";
+    license = licenses.gpl3;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ j0lol ];
+  };
+}
diff --git a/pkgs/applications/office/scribus/default.nix b/pkgs/applications/office/scribus/default.nix
index d40c96ef486ae..16e65d283645c 100644
--- a/pkgs/applications/office/scribus/default.nix
+++ b/pkgs/applications/office/scribus/default.nix
@@ -63,6 +63,11 @@ mkDerivation rec {
       url = "https://github.com/scribusproject/scribus/commit/f2237b8f0b5cf7690e864a22ef7a63a6d769fa36.patch";
       sha256 = "FXpLoX/a2Jy3GcfzrUUyVUfEAp5wAy2UfzfVA5lhwJw=";
     })
+    # For Poppler 22.09
+    (fetchpatch {
+      url = "https://github.com/archlinux/svntogit-community/raw/ea402a588c65d11973b148cf203b3463213431cf/trunk/scribus-1.5.8-poppler-22.09.0.patch";
+      sha256 = "IRQ6rSzH6ZWln6F13Ayk8k7ADj8l3lIJlGm/zjEURQM=";
+    })
   ];
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/office/trilium/default.nix b/pkgs/applications/office/trilium/default.nix
index 3a71cb2a70813..0ac2f4eac134e 100644
--- a/pkgs/applications/office/trilium/default.nix
+++ b/pkgs/applications/office/trilium/default.nix
@@ -10,13 +10,13 @@ let
     maintainers = with maintainers; [ fliegendewurst ];
   };
 
-  version = "0.56.1";
+  version = "0.56.2";
 
   desktopSource.url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-${version}.tar.xz";
-  desktopSource.sha256 = "1h6fwpk317mx341ib84gqxgacd0l65hxw79vqbm2fw25g68dphbb";
+  desktopSource.sha256 = "1rqfkbxgcd32kpi6xfd590nivd1ga0d0kf5zvffyypyy28q95pyz";
 
   serverSource.url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-server-${version}.tar.xz";
-  serverSource.sha256 = "1c134gi6zaxg19kc1c46fnpk9kg42949xxmivba7w17lx7asc5if";
+  serverSource.sha256 = "1pyi2b649n2rihr4dcz8brfkqrbvssbzhr3dnmyrhrp3qdyxamb6";
 
 in {
 
diff --git a/pkgs/applications/office/zotero/default.nix b/pkgs/applications/office/zotero/default.nix
index 72e84487b28ae..9c233f4692479 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.12";
+  version = "6.0.16";
 
   src = fetchurl {
     url =
       "https://download.zotero.org/client/release/${version}/Zotero-${version}_linux-x86_64.tar.bz2";
-    sha256 = "sha256-RIPFn0fLk2CbOoiZ4a5ungnbvfRWFQQUypCYVvVIQms=";
+    sha256 = "sha256-PqC7PqpRSm/Yt3pK8TuzcrhtfJSeJX6th2xb2n/Bul8=";
   };
 
   nativeBuildInputs = [ wrapGAppsHook ];
diff --git a/pkgs/applications/radio/direwolf/default.nix b/pkgs/applications/radio/direwolf/default.nix
index 46303d9c92abf..d3c01aff7695d 100644
--- a/pkgs/applications/radio/direwolf/default.nix
+++ b/pkgs/applications/radio/direwolf/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
       --replace 'Terminal=false' 'Terminal=true' \
       --replace 'Exec=@APPLICATION_DESKTOP_EXEC@' 'Exec=direwolf'
     substituteInPlace src/dwgpsd.c \
-      --replace 'GPSD_API_MAJOR_VERSION > 11' 'GPSD_API_MAJOR_VERSION > 12'
+      --replace 'GPSD_API_MAJOR_VERSION > 11' 'GPSD_API_MAJOR_VERSION > 14'
   '';
 
   meta = {
diff --git a/pkgs/applications/radio/freedv/default.nix b/pkgs/applications/radio/freedv/default.nix
index ba86468854822..b648c04577e0d 100644
--- a/pkgs/applications/radio/freedv/default.nix
+++ b/pkgs/applications/radio/freedv/default.nix
@@ -21,13 +21,13 @@
 
 stdenv.mkDerivation rec {
   pname = "freedv";
-  version = "1.8.3.1";
+  version = "1.8.4";
 
   src = fetchFromGitHub {
     owner = "drowe67";
     repo = "freedv-gui";
     rev = "v${version}";
-    hash = "sha256-LPCY5gPinxJkfPfumKggI/JQorcW+Qw/ZAP6XQmPkeA=";
+    hash = "sha256-X/jL6q2yLNtRq7Xg9JeXu1zXD0KCs59D1poA9hM3Ndo=";
   };
 
   postPatch = lib.optionalString stdenv.isDarwin ''
@@ -58,12 +58,15 @@ stdenv.mkDerivation rec {
   cmakeFlags = [
     "-DUSE_INTERNAL_CODEC2:BOOL=FALSE"
     "-DUSE_STATIC_DEPS:BOOL=FALSE"
+    "-DUNITTEST=ON"
   ] ++ lib.optionals pulseSupport [ "-DUSE_PULSEAUDIO:BOOL=TRUE" ];
 
   NIX_CFLAGS_COMPILE = lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [
     "-DAPPLE_OLD_XCODE"
   ];
 
+  doCheck = true;
+
   meta = with lib; {
     homepage = "https://freedv.org/";
     description = "Digital voice for HF radio";
diff --git a/pkgs/applications/radio/guglielmo/default.nix b/pkgs/applications/radio/guglielmo/default.nix
index 1702f5902021f..404ec7aa96a19 100644
--- a/pkgs/applications/radio/guglielmo/default.nix
+++ b/pkgs/applications/radio/guglielmo/default.nix
@@ -13,13 +13,13 @@
 
 mkDerivation rec {
   pname = "guglielmo";
-  version = "0.3";
+  version = "0.4";
 
   src = fetchFromGitHub {
     owner = "marcogrecopriolo";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0s1iz9s0k897jayiwl3yr9ylpclw6bzcpmzhxqn0mkd7jhgfl4vx";
+    sha256 = "sha256-djBQTYbpgPFBtQZ9fZBpECP20RxB49AdxLbq8mUU6rg=";
   };
 
   postInstall = ''
diff --git a/pkgs/applications/radio/qradiolink/default.nix b/pkgs/applications/radio/qradiolink/default.nix
index 567a587e6d5bc..88cff17bc3b83 100644
--- a/pkgs/applications/radio/qradiolink/default.nix
+++ b/pkgs/applications/radio/qradiolink/default.nix
@@ -17,17 +17,19 @@
 , protobuf
 , speex
 , speexdsp
+, cppzmq
+, zeromq
 }:
 
 gnuradio3_8.pkgs.mkDerivation rec {
   pname = "qradiolink";
-  version = "0.8.6-2";
+  version = "0.8.7-1";
 
   src = fetchFromGitHub {
     owner = "qradiolink";
     repo = "qradiolink";
     rev = version;
-    sha256 = "1694yyw0vc77m5pbc5rwl6khd8000dbrliz3q4vsa9dqnfnz1777";
+    sha256 = "sha256-4WkAEJvWu1+ZYDeipRl1oJWn5IR1nTXJ8We0trhbkQE=";
   };
 
   preBuild = ''
@@ -62,6 +64,8 @@ gnuradio3_8.pkgs.mkDerivation rec {
     gnuradio3_8.qt.qtmultimedia
     libftdi
     libsndfile
+    cppzmq
+    zeromq
     gnuradio3_8.qwt
   ] ++ lib.optionals (gnuradio3_8.hasFeature "gr-ctrlport") [
     thrift
diff --git a/pkgs/applications/radio/rtl_433/default.nix b/pkgs/applications/radio/rtl_433/default.nix
index e04a8a907d191..1dac6525ee630 100644
--- a/pkgs/applications/radio/rtl_433/default.nix
+++ b/pkgs/applications/radio/rtl_433/default.nix
@@ -17,6 +17,10 @@ stdenv.mkDerivation rec {
     name = "CVE-2022-27419";
     url = "https://github.com/merbanan/rtl_433/commit/37455483889bd1c641bdaafc493d1cc236b74904.patch";
     sha256 = "172jndh8x5nlcbx2jp5y8fgfxsawwfz95037pcjp170gf93ijy88";
+  }) ( fetchpatch {
+    name = "CVE-2022-25051";
+    url = "https://github.com/merbanan/rtl_433/commit/2dad7b9fc67a1d0bfbe520fbd821678b8f8cc7a8.patch";
+    sha256 = "sha256-IfxwdnuA7WbaVdxMTln069mA5hKNuPz+XYQaNA4YY24=";
   })];
 
   nativeBuildInputs = [ pkg-config cmake ];
diff --git a/pkgs/applications/science/astronomy/gnuastro/default.nix b/pkgs/applications/science/astronomy/gnuastro/default.nix
index d0d3ab65627b0..710b3c72e6d9e 100644
--- a/pkgs/applications/science/astronomy/gnuastro/default.nix
+++ b/pkgs/applications/science/astronomy/gnuastro/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnuastro";
-  version = "0.18";
+  version = "0.19";
 
   src = fetchurl {
     url = "mirror://gnu/gnuastro/gnuastro-${version}.tar.gz";
-    sha256 = "sha256-bKfiLhQFERdMbwL9+UitCL8/dB/k6YKNjBzfKnCtWec=";
+    sha256 = "sha256-4bPNW0sSb/J34vSOit8BA9Z/wK0Hz5o9OqfgVSlDDjU=";
   };
 
   nativeBuildInputs = [ libtool ];
diff --git a/pkgs/applications/science/biology/mmseqs2/default.nix b/pkgs/applications/science/biology/mmseqs2/default.nix
new file mode 100644
index 0000000000000..253f4a43a81c0
--- /dev/null
+++ b/pkgs/applications/science/biology/mmseqs2/default.nix
@@ -0,0 +1,50 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, xxd
+, perl
+, installShellFiles
+, enableAvx2 ? stdenv.hostPlatform.avx2Support
+, enableSse4_1 ? stdenv.hostPlatform.sse4_1Support
+, enableMpi ? false
+, mpi
+, openmp
+, zlib
+, bzip2
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mmseqs2";
+  version = "14-7e284";
+
+  src = fetchFromGitHub {
+    owner = "soedinglab";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-pVryZGblgMEqJl5M20CHxav269yGY6Y4ci+Gxt6SHOU=";
+  };
+
+  nativeBuildInputs = [ cmake xxd perl installShellFiles ];
+  cmakeFlags =
+    lib.optional enableAvx2 "-DHAVE_AVX2=1"
+    ++ lib.optional enableSse4_1 "-DHAVE_SSE4_1=1"
+    ++ lib.optional enableMpi "-DHAVE_MPI=1";
+
+  buildInputs =
+    lib.optionals stdenv.cc.isClang [ openmp zlib bzip2 ]
+    ++ lib.optional enableMpi mpi;
+
+  postInstall = ''
+    installShellCompletion --bash --cmd mmseqs $out/util/bash-completion.sh
+    rm -r $out/util/
+  '';
+
+  meta = with lib; {
+    description = "Ultra fast and sensitive sequence search and clustering suite";
+    homepage = "https://mmseqs.com/";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ natsukium ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/science/biology/sambamba/default.nix b/pkgs/applications/science/biology/sambamba/default.nix
index 36e950a181212..c6e78a134e608 100644
--- a/pkgs/applications/science/biology/sambamba/default.nix
+++ b/pkgs/applications/science/biology/sambamba/default.nix
@@ -23,10 +23,17 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ which python3 ldc ];
   buildInputs = [ zlib lz4 ];
 
+  buildFlags = [
+    "CC=${stdenv.cc.targetPrefix}cc"
+  ];
+
   # Upstream's install target is broken; copy manually
   installPhase = ''
-    mkdir -p $out/bin
-    cp bin/sambamba-${version} $out/bin/sambamba
+    runHook preInstall
+
+    install -Dm755 bin/sambamba-${version} $out/bin/sambamba
+
+    runHook postInstall
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/science/chemistry/element/default.nix b/pkgs/applications/science/chemistry/element/default.nix
index 812272e2fb9b6..c9c609f4b8f2a 100644
--- a/pkgs/applications/science/chemistry/element/default.nix
+++ b/pkgs/applications/science/chemistry/element/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "element";
-  version = "1.0.0";
+  version = "1.0.1";
 
   src = fetchFromGitHub {
     owner = "gennaro-tedesco";
     repo = pname;
     rev = "v${version}";
-    sha256 = "gjdcNvYNnxb6hOE/MQjTezZeYGBWTr4E8/Pt8YQv3lY=";
+    sha256 = "sha256-06RDZnie0Lv7i95AwnBGl6PPucuj8pIT6DHW3e3mu1o=";
   };
 
-  vendorSha256 = "A4g2rQTaYrA4/0rqldUv7iuibzNINEvx9StUnaN2/Yg=";
+  vendorSha256 = "sha256-A4g2rQTaYrA4/0rqldUv7iuibzNINEvx9StUnaN2/Yg=";
 
   meta = with lib; {
     description = "The periodic table on the command line";
diff --git a/pkgs/applications/science/electronics/kicad/base.nix b/pkgs/applications/science/electronics/kicad/base.nix
index 1503230b3afda..f81710cfb911c 100644
--- a/pkgs/applications/science/electronics/kicad/base.nix
+++ b/pkgs/applications/science/electronics/kicad/base.nix
@@ -5,6 +5,7 @@
 , libGL
 , zlib
 , wxGTK
+, gtk3
 , libX11
 , gettext
 , glew
@@ -143,7 +144,7 @@ stdenv.mkDerivation rec {
     zlib
     libX11
     wxGTK
-    wxGTK.gtk
+    gtk3
     pcre
     libXdmcp
     gettext
diff --git a/pkgs/applications/science/electronics/kicad/default.nix b/pkgs/applications/science/electronics/kicad/default.nix
index 95e88ff14071b..9042862eac323 100644
--- a/pkgs/applications/science/electronics/kicad/default.nix
+++ b/pkgs/applications/science/electronics/kicad/default.nix
@@ -2,7 +2,8 @@
 , fetchFromGitLab
 , gnome
 , dconf
-, wxGTK31-gtk3
+, wxGTK31
+, gtk3
 , makeWrapper
 , gsettings-desktop-schemas
 , hicolor-icon-theme
@@ -103,7 +104,7 @@ let
     if srcOverridep "libVersion" then srcs.libVersion
     else versionsImport.${baseName}.libVersion.version;
 
-  wxGTK = wxGTK31-gtk3;
+  wxGTK = wxGTK31;
   python = python3;
   wxPython = python.pkgs.wxPython_4_1;
 
@@ -143,7 +144,7 @@ stdenv.mkDerivation rec {
     "--prefix XDG_DATA_DIRS : ${base}/share"
     "--prefix XDG_DATA_DIRS : ${hicolor-icon-theme}/share"
     "--prefix XDG_DATA_DIRS : ${gnome.adwaita-icon-theme}/share"
-    "--prefix XDG_DATA_DIRS : ${wxGTK.gtk}/share/gsettings-schemas/${wxGTK.gtk.name}"
+    "--prefix XDG_DATA_DIRS : ${gtk3}/share/gsettings-schemas/${gtk3.name}"
     "--prefix XDG_DATA_DIRS : ${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}"
     # wrapGAppsHook did these two as well, no idea if it matters...
     "--prefix XDG_DATA_DIRS : ${cups}/share"
diff --git a/pkgs/applications/science/electronics/kicad/versions.nix b/pkgs/applications/science/electronics/kicad/versions.nix
index d46c941b8f0d7..737a819e84777 100644
--- a/pkgs/applications/science/electronics/kicad/versions.nix
+++ b/pkgs/applications/science/electronics/kicad/versions.nix
@@ -3,22 +3,22 @@
 {
   "kicad" = {
     kicadVersion = {
-      version =			"6.0.8";
+      version =			"6.0.9";
       src = {
-        rev =			"f2edbf62ab6eb123d605d06cffedadc424fed55b";
-        sha256 =		"0f5iriahskzflgfzahbjihiff7m7nbdmp3ip8dx69xa28b9012w9";
+        rev =			"8da3e8f7071484853b31c61cbd5045903b5c6dd3";
+        sha256 =		"1fr02jcy09v14d3k8ril0zhwnzhcqcf77wfj5b3bkrh6r8xraqhs";
       };
     };
     libVersion = {
-      version =			"6.0.8";
+      version =			"6.0.9";
       libSources = {
-        symbols.rev =		"64a2f338f3f994975edfd33bc04f92fd6b9ed1c3";
-        symbols.sha256 =	"1nxz8r3h3j62fs3s77lj27333fsj5c4i01n05lv0gqx36h28hqxk";
-        templates.rev =		"549275966dd4f01ce656cec2b46599d1b7a3ca62";
+        symbols.rev =		"0d9559dfddd51110e5c5223901ada2445285ce80";
+        symbols.sha256 =	"0y5mjjmmln37hkp9wmydinlfgrn8im8rn20145g9xgdpj8j38d48";
+        templates.rev =		"ae2b46f8756d79379b90fec01d4fdde1ccfd73c1";
         templates.sha256 =	"08zxh83fbygh1x2jhca8nrp3f9kihf7kmg65qmyp95wvps4p5h8v";
-        footprints.rev =	"8eedad538f5b8234d3889ad08a3f272832b724b1";
-        footprints.sha256 =	"19di37hi80rzlwd468w3b6bq5kzxbslp3daskv8xb4y4f7pk3n00";
-        packages3d.rev =	"471e36d23c2d4f9971a591e2ab6ce717709438f9";
+        footprints.rev =	"6705da57c29e9896556c7cdbe719ede3f96e9121";
+        footprints.sha256 =	"02j445i0kcf87fhj9y6pwfcwq3arppxbrv77lbizm8kcpkpcfldl";
+        packages3d.rev =	"45df600c5e3dd5113d62e6445115e7c37bdf362f";
         packages3d.sha256 =	"0cnrg7mr3khpglviid1adk2ihs1qwj0r7l32z2vqsl8aidzbg9kr";
       };
     };
diff --git a/pkgs/applications/science/electronics/ngspice/default.nix b/pkgs/applications/science/electronics/ngspice/default.nix
index 8de5cb311488f..15509a62de534 100644
--- a/pkgs/applications/science/electronics/ngspice/default.nix
+++ b/pkgs/applications/science/electronics/ngspice/default.nix
@@ -31,6 +31,6 @@ stdenv.mkDerivation rec {
     homepage = "http://ngspice.sourceforge.net";
     license = with licenses; [ "BSD" gpl2 ];
     maintainers = with maintainers; [ bgamari rongcuid ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/science/electronics/verilator/default.nix b/pkgs/applications/science/electronics/verilator/default.nix
index b9cc2274a3d68..0a190a1c90294 100644
--- a/pkgs/applications/science/electronics/verilator/default.nix
+++ b/pkgs/applications/science/electronics/verilator/default.nix
@@ -1,35 +1,37 @@
 { lib, stdenv, fetchFromGitHub
 , perl, flex, bison, python3, autoconf
+, which, cmake
 }:
 
 stdenv.mkDerivation rec {
   pname = "verilator";
-  version = "4.226";
+  version = "5.002";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-X6Kwpcm+ugu+4gVkWfsqdCPFTESHzJ1jjCPnGqE3/vo=";
+    hash = "sha256-RNoKAEF7zl+WqqbxGP/VvdQqQP8VI3hoQku3b/g0XpU=";
   };
 
   enableParallelBuilding = true;
   buildInputs = [ perl ];
   nativeBuildInputs = [ flex bison python3 autoconf ];
+  checkInputs = [ which ];
 
-  # these tests need some interpreter paths patched early on...
-  # see https://github.com/NixOS/nix/issues/1205
-  doCheck = false;
+  doCheck = stdenv.isLinux; # darwin tests are broken for now...
   checkTarget = "test";
 
-  preConfigure = ''
-    autoconf
-  '';
+  preConfigure = "autoconf";
 
-  postPatch = ''
+  preCheck = ''
     patchShebangs \
       src/flexfix \
-      src/vlcovgen
+      src/vlcovgen \
+      bin/verilator \
+      bin/verilator_coverage \
+      test_regress/driver.pl \
+      test_regress/t/*.pl
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/science/logic/cbmc/default.nix b/pkgs/applications/science/logic/cbmc/default.nix
index 4750dd08c0a97..e5c16695624b7 100644
--- a/pkgs/applications/science/logic/cbmc/default.nix
+++ b/pkgs/applications/science/logic/cbmc/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cbmc";
-  version = "5.68.0";
+  version = "5.69.1";
 
   src = fetchFromGitHub {
     owner = "diffblue";
     repo = pname;
     rev = "${pname}-${version}";
-    sha256 = "sha256-Hup/E426sPAj8/vpgBz8j6C65fG6U59oq78mqmGkDD8=";
+    sha256 = "sha256-1HwR+MM2AUrx07knBDJg+xCm0/cyGzYGQ2LvJUxXEyE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/science/logic/nusmv/default.nix b/pkgs/applications/science/logic/nusmv/default.nix
new file mode 100644
index 0000000000000..d3e3dc998cc0e
--- /dev/null
+++ b/pkgs/applications/science/logic/nusmv/default.nix
@@ -0,0 +1,37 @@
+{ stdenv
+, lib
+, fetchurl
+, autoPatchelfHook
+}:
+
+stdenv.mkDerivation rec {
+  pname = "NuSMV";
+  version = "2.6.0";
+
+  src = with stdenv; fetchurl (
+    if isx86_64 && isLinux then {
+      url = "https://nusmv.fbk.eu/distrib/NuSMV-${version}-linux64.tar.gz";
+      sha256 = "1370x2vwjndv9ham5q399nn84hvhm1gj1k7pq576qmh4pi12xc8i";
+    } else if isx86_32 && isLinux then {
+      url = "https://nusmv.fbk.eu/distrib/NuSMV-${version}-linux32.tar.gz";
+      sha256 = "1qf41czwbqxlrmv0rv2daxgz2hljza5xks85sx3dhwpjy2iav9jb";
+    } else throw "only linux x86_64 and x86_32 are currently supported") ;
+
+
+  nativeBuildInputs = [ autoPatchelfHook ];
+
+  installPhase = ''
+    install -m755 -D bin/NuSMV $out/bin/NuSMV
+    install -m755 -D bin/ltl2smv $out/bin/ltl2smv
+    cp -r include $out/include
+    cp -r share $out/share
+  '';
+
+  meta = with lib; {
+    description = "A new symbolic model checker for the analysis of synchronous finite-state and infinite-state systems";
+    homepage = "https://nuxmv.fbk.eu/pmwiki.php";
+    maintainers = with maintainers; [ mgttlinger ];
+    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/science/math/cemu/default.nix b/pkgs/applications/science/math/cemu-ti/default.nix
index 374b245e2499f..2f2440eacfed6 100644
--- a/pkgs/applications/science/math/cemu/default.nix
+++ b/pkgs/applications/science/math/cemu-ti/default.nix
@@ -1,55 +1,43 @@
-{ fetchFromGitHub
+{ stdenv
 , lib
-, SDL2
-, libGL
-, libarchive
-, libusb-compat-0_1
-, qtbase
+, fetchFromGitHub
 , qmake
-, git
-, libpng
 , pkg-config
 , wrapQtAppsHook
-, stdenv
+, libarchive
+, libpng
 }:
 
 stdenv.mkDerivation rec {
   pname = "CEmu";
-  version = "1.3";
+  version = "unstable-2022-06-29";
   src = fetchFromGitHub {
     owner = "CE-Programming";
     repo = "CEmu";
-    rev = "v${version}";
-    sha256 = "1wcdnzcqscawj6jfdj5wwmw9g9vsd6a1rx0rrramakxzf8b7g47r";
+    rev = "880d391ba9f8b7b2ec36ab9b45a34e9ecbf744e9";
+    hash = "sha256-aFwGZJceh1jEP8cEajY5wYlSaFuNhYvSoZ/E1QDfJEI=";
     fetchSubmodules = true;
   };
 
   nativeBuildInputs = [
     qmake
-    git
     wrapQtAppsHook
     pkg-config
   ];
 
   buildInputs = [
-    SDL2
-    libGL
     libarchive
-    libusb-compat-0_1
-    qtbase
     libpng
   ];
 
   qmakeFlags = [
     "gui/qt"
-    "CONFIG+=ltcg"
   ];
 
   meta = with lib; {
-    changelog = "https://github.com/CE-Programming/CEmu/releases/tag/v${version}";
     description = "Third-party TI-84 Plus CE / TI-83 Premium CE emulator, focused on developer features";
     homepage = "https://ce-programming.github.io/CEmu";
-    license = licenses.gpl3;
+    license = licenses.gpl3Plus;
     maintainers = with maintainers; [ luc65r ];
     platforms = [ "x86_64-linux" "x86_64-darwin" ];
     broken = stdenv.isDarwin;
diff --git a/pkgs/applications/science/robotics/mujoco/default.nix b/pkgs/applications/science/robotics/mujoco/default.nix
new file mode 100644
index 0000000000000..4af3d6899fa9b
--- /dev/null
+++ b/pkgs/applications/science/robotics/mujoco/default.nix
@@ -0,0 +1,122 @@
+{ cmake
+, fetchFromGitHub
+, fetchFromGitLab
+, git
+, lib
+, libGL
+, stdenv
+, xorg
+}:
+
+let
+  # See https://github.com/deepmind/mujoco/blob/573d331b69845c5d651b70f5d1b0f3a0d2a3a233/cmake/MujocoDependencies.cmake#L21-L59
+  abseil-cpp = fetchFromGitHub {
+    owner = "abseil";
+    repo = "abseil-cpp";
+    rev = "8c0b94e793a66495e0b1f34a5eb26bd7dc672db0";
+    hash = "sha256-Od1FZOOWEXVQsnZBwGjDIExi6LdYtomyL0STR44SsG8=";
+  };
+  benchmark = fetchFromGitHub {
+    owner = "google";
+    repo = "benchmark";
+    rev = "d845b7b3a27d54ad96280a29d61fa8988d4fddcf";
+    hash = "sha256-XTnTM1k6xMGXUws/fKdJUbpCPcc4U0IelL6BPEEnpEQ=";
+  };
+  ccd = fetchFromGitHub {
+    owner = "danfis";
+    repo = "libccd";
+    rev = "7931e764a19ef6b21b443376c699bbc9c6d4fba8";
+    hash = "sha256-TIZkmqQXa0+bSWpqffIgaBela0/INNsX9LPM026x1Wk=";
+  };
+  eigen3 = fetchFromGitLab {
+    owner = "libeigen";
+    repo = "eigen";
+    rev = "3bb6a48d8c171cf20b5f8e48bfb4e424fbd4f79e";
+    hash = "sha256-k71DoEsx8JpC9AlQ0cCRI0fWMIWFBFL/Yscx+2iBtNM=";
+  };
+  googletest = fetchFromGitHub {
+    owner = "google";
+    repo = "googletest";
+    rev = "58d77fa8070e8cec2dc1ed015d66b454c8d78850";
+    hash = "sha256-W+OxRTVtemt2esw4P7IyGWXOonUN5ZuscjvzqkYvZbM=";
+  };
+  lodepng = fetchFromGitHub {
+    owner = "lvandeve";
+    repo = "lodepng";
+    rev = "b4ed2cd7ecf61d29076169b49199371456d4f90b";
+    hash = "sha256-5cCkdj/izP4e99BKfs/Mnwu9aatYXjlyxzzYiMD/y1M=";
+  };
+  qhull = fetchFromGitHub {
+    owner = "qhull";
+    repo = "qhull";
+    rev = "3df027b91202cf179f3fba3c46eebe65bbac3790";
+    hash = "sha256-aHO5n9Y35C7/zb3surfMyjyMjo109DoZnkozhiAKpYQ=";
+  };
+  tinyobjloader = fetchFromGitHub {
+    owner = "tinyobjloader";
+    repo = "tinyobjloader";
+    rev = "1421a10d6ed9742f5b2c1766d22faa6cfbc56248";
+    hash = "sha256-9z2Ne/WPCiXkQpT8Cun/pSGUwgClYH+kQ6Dx1JvW6w0=";
+  };
+  tinyxml2 = fetchFromGitHub {
+    owner = "leethomason";
+    repo = "tinyxml2";
+    rev = "1dee28e51f9175a31955b9791c74c430fe13dc82";
+    hash = "sha256-AQQOctXi7sWIH/VOeSUClX6hlm1raEQUOp+VoPjLM14=";
+  };
+
+  # See https://github.com/deepmind/mujoco/blob/573d331b69845c5d651b70f5d1b0f3a0d2a3a233/simulate/cmake/SimulateDependencies.cmake#L32-L35
+  glfw = fetchFromGitHub {
+    owner = "glfw";
+    repo = "glfw";
+    rev = "7482de6071d21db77a7236155da44c172a7f6c9e";
+    hash = "sha256-4+H0IXjAwbL5mAWfsIVhW0BSJhcWjkQx4j2TrzZ3aIo=";
+  };
+in
+stdenv.mkDerivation rec {
+  pname = "mujoco";
+  version = "2.3.0";
+
+  src = fetchFromGitHub {
+    owner = "deepmind";
+    repo = pname;
+    rev = version;
+    hash = "sha256-FxMaXl7yfUAyY6LE1sxaw226dBtp1DOCWNnROp0WX2I=";
+  };
+
+  patches = [ ./dependencies.patch ];
+
+  nativeBuildInputs = [ cmake git ];
+
+  buildInputs = [
+    libGL
+    xorg.libX11
+    xorg.libXcursor
+    xorg.libXext
+    xorg.libXi
+    xorg.libXinerama
+    xorg.libXrandr
+  ];
+
+  # Move things into place so that cmake doesn't try downloading dependencies.
+  preConfigure = ''
+    mkdir -p build/_deps
+    ln -s ${abseil-cpp} build/_deps/abseil-cpp-src
+    ln -s ${benchmark} build/_deps/benchmark-src
+    ln -s ${ccd} build/_deps/ccd-src
+    ln -s ${eigen3} build/_deps/eigen3-src
+    ln -s ${glfw} build/_deps/glfw-src
+    ln -s ${googletest} build/_deps/googletest-src
+    ln -s ${lodepng} build/_deps/lodepng-src
+    ln -s ${qhull} build/_deps/qhull-src
+    ln -s ${tinyobjloader} build/_deps/tinyobjloader-src
+    ln -s ${tinyxml2} build/_deps/tinyxml2-src
+  '';
+
+  meta = with lib; {
+    description = "Multi-Joint dynamics with Contact. A general purpose physics simulator.";
+    homepage = "https://mujoco.org/";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ samuela ];
+  };
+}
diff --git a/pkgs/applications/science/robotics/mujoco/dependencies.patch b/pkgs/applications/science/robotics/mujoco/dependencies.patch
new file mode 100644
index 0000000000000..5ddbaaab53297
--- /dev/null
+++ b/pkgs/applications/science/robotics/mujoco/dependencies.patch
@@ -0,0 +1,114 @@
+diff --git a/cmake/MujocoDependencies.cmake b/cmake/MujocoDependencies.cmake
+index 99e4a7a..cf9a901 100644
+--- a/cmake/MujocoDependencies.cmake
++++ b/cmake/MujocoDependencies.cmake
+@@ -82,8 +82,6 @@ set(BUILD_SHARED_LIBS
+ if(NOT TARGET lodepng)
+   FetchContent_Declare(
+     lodepng
+-    GIT_REPOSITORY https://github.com/lvandeve/lodepng.git
+-    GIT_TAG ${MUJOCO_DEP_VERSION_lodepng}
+   )
+ 
+   FetchContent_GetProperties(lodepng)
+@@ -111,10 +109,6 @@ findorfetch(
+   qhull
+   LIBRARY_NAME
+   qhull
+-  GIT_REPO
+-  https://github.com/qhull/qhull.git
+-  GIT_TAG
+-  ${MUJOCO_DEP_VERSION_qhull}
+   TARGETS
+   qhull
+   # TODO(fraromano) Remove when https://github.com/qhull/qhull/pull/112 is merged.
+@@ -146,10 +140,6 @@ findorfetch(
+   tinyxml2
+   LIBRARY_NAME
+   tinyxml2
+-  GIT_REPO
+-  https://github.com/leethomason/tinyxml2.git
+-  GIT_TAG
+-  ${MUJOCO_DEP_VERSION_tinyxml2}
+   TARGETS
+   tinyxml2
+   EXCLUDE_FROM_ALL
+@@ -164,10 +154,6 @@ findorfetch(
+   tinyobjloader
+   LIBRARY_NAME
+   tinyobjloader
+-  GIT_REPO
+-  https://github.com/tinyobjloader/tinyobjloader.git
+-  GIT_TAG
+-  ${MUJOCO_DEP_VERSION_tinyobjloader}
+   TARGETS
+   tinyobjloader
+   EXCLUDE_FROM_ALL
+@@ -182,10 +168,6 @@ findorfetch(
+   ccd
+   LIBRARY_NAME
+   ccd
+-  GIT_REPO
+-  https://github.com/danfis/libccd.git
+-  GIT_TAG
+-  ${MUJOCO_DEP_VERSION_ccd}
+   TARGETS
+   ccd
+   EXCLUDE_FROM_ALL
+@@ -222,10 +204,6 @@ if(MUJOCO_BUILD_TESTS)
+     absl
+     LIBRARY_NAME
+     abseil-cpp
+-    GIT_REPO
+-    https://github.com/abseil/abseil-cpp.git
+-    GIT_TAG
+-    ${MUJOCO_DEP_VERSION_abseil}
+     TARGETS
+     absl::core_headers
+     EXCLUDE_FROM_ALL
+@@ -249,10 +227,6 @@ if(MUJOCO_BUILD_TESTS)
+     GTest
+     LIBRARY_NAME
+     googletest
+-    GIT_REPO
+-    https://github.com/google/googletest.git
+-    GIT_TAG
+-    ${MUJOCO_DEP_VERSION_gtest}
+     TARGETS
+     gtest
+     gmock
+@@ -283,10 +257,6 @@ if(MUJOCO_BUILD_TESTS)
+     benchmark
+     LIBRARY_NAME
+     benchmark
+-    GIT_REPO
+-    https://github.com/google/benchmark.git
+-    GIT_TAG
+-    ${MUJOCO_DEP_VERSION_benchmark}
+     TARGETS
+     benchmark::benchmark
+     benchmark::benchmark_main
+@@ -303,8 +273,6 @@ if(MUJOCO_TEST_PYTHON_UTIL)
+ 
+     FetchContent_Declare(
+       Eigen3
+-      GIT_REPOSITORY https://gitlab.com/libeigen/eigen.git
+-      GIT_TAG ${MUJOCO_DEP_VERSION_Eigen3}
+     )
+ 
+     FetchContent_GetProperties(Eigen3)
+diff --git a/simulate/cmake/SimulateDependencies.cmake b/simulate/cmake/SimulateDependencies.cmake
+index 6616d6f..5d5a889 100644
+--- a/simulate/cmake/SimulateDependencies.cmake
++++ b/simulate/cmake/SimulateDependencies.cmake
+@@ -81,10 +81,6 @@ findorfetch(
+   glfw
+   LIBRARY_NAME
+   glfw
+-  GIT_REPO
+-  https://github.com/glfw/glfw.git
+-  GIT_TAG
+-  ${MUJOCO_DEP_VERSION_glfw}
+   TARGETS
+   glfw
+   EXCLUDE_FROM_ALL
diff --git a/pkgs/applications/search/recoll/default.nix b/pkgs/applications/search/recoll/default.nix
index 8d33a910546cd..4117c8ac78a98 100644
--- a/pkgs/applications/search/recoll/default.nix
+++ b/pkgs/applications/search/recoll/default.nix
@@ -46,6 +46,13 @@ mkDerivation rec {
     ++ lib.optionals (!withGui) [ "--disable-qtgui" "--disable-x11mon" ]
     ++ (if stdenv.isLinux then [ "--with-inotify" ] else [ "--without-inotify" ]);
 
+  NIX_CFLAGS_COMPILE = [ "-DNIXPKGS" ];
+
+  patches = [
+    # fix "No/bad main configuration file" error
+    ./fix-datadir.patch
+  ];
+
   nativeBuildInputs = [
     file pkg-config python3Packages.setuptools which
   ];
diff --git a/pkgs/applications/search/recoll/fix-datadir.patch b/pkgs/applications/search/recoll/fix-datadir.patch
new file mode 100644
index 0000000000000..3b316f4d90c6e
--- /dev/null
+++ b/pkgs/applications/search/recoll/fix-datadir.patch
@@ -0,0 +1,13 @@
+diff --git a/utils/rclutil.cpp b/utils/rclutil.cpp
+index 60ff5fb..4a59ccc 100644
+--- a/utils/rclutil.cpp
++++ b/utils/rclutil.cpp
+@@ -279,7 +279,7 @@ const string& path_pkgdatadir()
+         "a subfolder of the installation directory. \n"
+         "Please set the RECOLL_DATADIR environment variable to point to it\n"
+         "(e.g. setx RECOLL_DATADIR \"C:/Program Files (X86)/Recoll/Share)\"\n";
+-#elif defined(__APPLE__) && !defined(MACPORTS) && !defined(HOMEBREW)
++#elif defined(__APPLE__) && !defined(MACPORTS) && !defined(HOMEBREW) && !defined(NIXPKGS)
+     uint32_t size = 0;
+     _NSGetExecutablePath(nullptr, &size);
+     char *path= (char*)malloc(size+1);
diff --git a/pkgs/applications/system/glances/default.nix b/pkgs/applications/system/glances/default.nix
index 495d236b3528b..f4ec3126976e1 100644
--- a/pkgs/applications/system/glances/default.nix
+++ b/pkgs/applications/system/glances/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonApplication rec {
   pname = "glances";
-  version = "3.2.7";
+  version = "3.3.0";
   disabled = isPyPy;
 
   src = fetchFromGitHub {
     owner = "nicolargo";
     repo = "glances";
-    rev = "v${version}";
-    sha256 = "sha256-WZDvC95Y6Xc7dOuPJJlJLI4PCZR76pYPl8NGtmxe91o=";
+    rev = "refs/tags/v${version}";
+    sha256 = "sha256-4EZjr8oW5759U20YS6eWVZ0pelTCDj75FBc7IkAzd3M=";
   };
 
   # On Darwin this package segfaults due to mismatch of pure and impure
diff --git a/pkgs/applications/version-management/commitizen/default.nix b/pkgs/applications/version-management/commitizen/default.nix
index bd5e22dc3c6f0..274eb3a0070f6 100644
--- a/pkgs/applications/version-management/commitizen/default.nix
+++ b/pkgs/applications/version-management/commitizen/default.nix
@@ -17,17 +17,18 @@
 , tomlkit
 , typing-extensions
 , argcomplete
+, nix-update-script
 }:
 
 buildPythonApplication rec {
   pname = "commitizen";
-  version = "2.35.0";
+  version = "2.37.0";
 
   src = fetchFromGitHub {
     owner = "commitizen-tools";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-9ek6m5k01sGVHwqWXjWYDsPmIeAgK+H23D9sF5hjrf0=";
+    hash = "sha256-wo1I6QDWLxByHISmkPdass+BcKh0oxR5hD31UN/5+WQ=";
     deepClone = true;
   };
 
@@ -80,9 +81,14 @@ buildPythonApplication rec {
     "test_get_commits_with_signature"
   ];
 
+  passthru.updateScript = nix-update-script {
+    attrPath = pname;
+  };
+
   meta = with lib; {
     description = "Tool to create committing rules for projects, auto bump versions, and generate changelogs";
     homepage = "https://github.com/commitizen-tools/commitizen";
+    changelog = "https://github.com/commitizen-tools/commitizen/blob/v${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ lovesegfault anthonyroussel ];
   };
diff --git a/pkgs/applications/version-management/git-and-tools/gh/default.nix b/pkgs/applications/version-management/git-and-tools/gh/default.nix
index 15b164284bfb6..bfa5addefee98 100644
--- a/pkgs/applications/version-management/git-and-tools/gh/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/gh/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "gh";
-  version = "2.18.1";
+  version = "2.19.0";
 
   src = fetchFromGitHub {
     owner = "cli";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "sha256-igtbMrm4cgaBWxjvv8UjqvPNFSi1UxNgplWYArqRRi0=";
+    sha256 = "sha256-SqKjN9Met+NsfaQO3PGTPua/ZVaorYbSJHWeXgEm524=";
   };
 
-  vendorSha256 = "sha256-XWquL/+47t467kOYpDgMmT7t3hbdCiPQnatRW+VtaYc=";
+  vendorSha256 = "sha256-VWeUVdrAzbS7OmHHZIPlyq6WVj4I39n7ozS7n3ReqJk=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix
index dd244b3687c15..2d63ae403791c 100644
--- a/pkgs/applications/version-management/git-and-tools/git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git/default.nix
@@ -28,7 +28,7 @@ assert sendEmailSupport -> perlSupport;
 assert svnSupport -> perlSupport;
 
 let
-  version = "2.38.0";
+  version = "2.38.1";
   svn = subversionClient.override { perlBindings = perlSupport; };
   gitwebPerlLibs = with perlPackages; [ CGI HTMLParser CGIFast FCGI FCGIProcManager HTMLTagCloud ];
 in
@@ -41,7 +41,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   src = fetchurl {
     url = "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz";
-    sha256 = "sha256-kj6t4msYFN540GvajgqfXai3xLMEs/kFD/tGTwMQMgo=";
+    sha256 = "sha256-l9346liiueD7wlCOJFAoynWRG9ONFVFhaxSMGqV0Ctk=";
   };
 
   outputs = [ "out" ] ++ lib.optional withManual "doc";
@@ -207,6 +207,7 @@ stdenv.mkDerivation (finalAttrs: {
       # Also put git-http-backend into $PATH, so that we can use smart
       # HTTP(s) transports for pushing
       ln -s $out/libexec/git-core/git-http-backend $out/bin/git-http-backend
+      ln -s $out/share/git/contrib/git-jump/git-jump $out/bin/git-jump
     '' + lib.optionalString perlSupport ''
       # wrap perl commands
       makeWrapper "$out/share/git/contrib/credential/netrc/git-credential-netrc.perl" $out/bin/git-credential-netrc \
diff --git a/pkgs/applications/version-management/git-and-tools/lefthook/default.nix b/pkgs/applications/version-management/git-and-tools/lefthook/default.nix
index 7e84a9815d166..fa88b70b47847 100644
--- a/pkgs/applications/version-management/git-and-tools/lefthook/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/lefthook/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "lefthook";
-  version = "1.1.3";
+  version = "1.1.4";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "evilmartians";
     repo = "lefthook";
-    sha256 = "sha256-TV7ogO7mfRMpLekRAedJsdRJUBbPyxPO9MCoGg6uCno=";
+    sha256 = "sha256-e3kNr9FMcqznKLFXA8gNTBjaMyXhrWzIxMmX7r6aaWA=";
   };
 
   vendorSha256 = "sha256-NTZz0EDIjGdh8dD9jxbNVdWb7NFJsdtnMp7H6Ni0EbQ=";
diff --git a/pkgs/applications/version-management/git-repo/default.nix b/pkgs/applications/version-management/git-repo/default.nix
index d75337631a8b7..809ca5eaae51c 100644
--- a/pkgs/applications/version-management/git-repo/default.nix
+++ b/pkgs/applications/version-management/git-repo/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "git-repo";
-  version = "2.29.4";
+  version = "2.29.5";
 
   src = fetchFromGitHub {
     owner = "android";
     repo = "tools_repo";
     rev = "v${version}";
-    sha256 = "sha256-oUPY10B6JHixdfgi5BHzrg9nZ1DlFUhQyuXJj2fCSM4=";
+    sha256 = "sha256-eMuQ0cVVbLvpDsGCob8s7D1Q+52Q2gOHTg7anP5KVAc=";
   };
 
   # Fix 'NameError: name 'ssl' is not defined'
diff --git a/pkgs/applications/version-management/gitlab/data.json b/pkgs/applications/version-management/gitlab/data.json
index a5eb46d834af7..693b7adf46b85 100644
--- a/pkgs/applications/version-management/gitlab/data.json
+++ b/pkgs/applications/version-management/gitlab/data.json
@@ -1,15 +1,15 @@
 {
-  "version": "15.4.2",
-  "repo_hash": "sha256-KGVZrfrzfIn2ZQJ42FisLvjIGg0+QOnzfjCR6mQHjlM=",
+  "version": "15.4.4",
+  "repo_hash": "sha256-iIgN1j02Lr/RtNeopqs6ndFqw8YIU2F6c49RGWvpmgc=",
   "yarn_hash": "1r33qrvwf2wmq5c1d2awk9qhk9nzvafqn3drdvnczfv43sda4lg8",
   "owner": "gitlab-org",
   "repo": "gitlab",
-  "rev": "v15.4.2-ee",
+  "rev": "v15.4.4-ee",
   "passthru": {
-    "GITALY_SERVER_VERSION": "15.4.2",
+    "GITALY_SERVER_VERSION": "15.4.4",
     "GITLAB_PAGES_VERSION": "1.62.0",
     "GITLAB_SHELL_VERSION": "14.10.0",
-    "GITLAB_WORKHORSE_VERSION": "15.4.2"
+    "GITLAB_WORKHORSE_VERSION": "15.4.4"
   },
   "vendored_gems": [
     "bundler-checksum",
diff --git a/pkgs/applications/version-management/gitlab/gitaly/default.nix b/pkgs/applications/version-management/gitlab/gitaly/default.nix
index 32786117c2132..44a8218e1fbc8 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitaly/default.nix
@@ -11,7 +11,7 @@ let
     gemdir = ./.;
   };
 
-  version = "15.4.2";
+  version = "15.4.4";
   package_version = "v${lib.versions.major version}";
   gitaly_package = "gitlab.com/gitlab-org/gitaly/${package_version}";
 
@@ -22,7 +22,7 @@ let
       owner = "gitlab-org";
       repo = "gitaly";
       rev = "v${version}";
-      sha256 = "sha256-DBAQ1dJLQ+Xno4e/n1jvgKiHAol/uTMjx6RtZIBwM3w=";
+      sha256 = "sha256-b8ChQYaj+7snlrLP4P9FIUSIq/SNMh9hFlFajOPcBEU=";
     };
 
     vendorSha256 = "sha256-CUFYHjmOfosM3mfw0qEY+AQcR8U3J/1lU2Ml6wSZ/QM=";
diff --git a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
index 5b6617e0ab70f..2042b6c2bcefa 100644
--- a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
@@ -5,7 +5,7 @@ in
 buildGoModule rec {
   pname = "gitlab-workhorse";
 
-  version = "15.4.2";
+  version = "15.4.4";
 
   src = fetchFromGitLab {
     owner = data.owner;
diff --git a/pkgs/applications/version-management/sourcehut/builds.nix b/pkgs/applications/version-management/sourcehut/builds.nix
index 1655ad28aaf9a..20d4d463a0938 100644
--- a/pkgs/applications/version-management/sourcehut/builds.nix
+++ b/pkgs/applications/version-management/sourcehut/builds.nix
@@ -1,6 +1,5 @@
 { lib
 , fetchFromSourcehut
-, fetchpatch
 , buildGoModule
 , buildPythonPackage
 , srht
@@ -13,36 +12,27 @@
 , unzip
 }:
 let
-  version = "0.82.8";
+  version = "0.83.0";
 
   src = fetchFromSourcehut {
     owner = "~sircmpwn";
     repo = "builds.sr.ht";
     rev = version;
-    hash = "sha256-M94zkEUJU8EwksN34sd5IkASDCQ0hHb98G5wzZsCrpg=";
+    hash = "sha256-u/y+sYu/09LypWI/ngghbge5SvkuLQpray10j0SjlOo=";
   };
 
   buildsrht-api = buildGoModule ({
     inherit src version;
     pname = "buildsrht-api";
     modRoot = "api";
-    vendorHash = "sha256-8z5m4bMwLeYg4i91MMjLMqbciWvqS0icCHFUJTUHBgk=";
-  } // import ./fix-gqlgen-trimpath.nix { inherit unzip; });
+    vendorHash = "sha256-DfVWr/4J4ZrhHpy9CXPaAQcbag/9FmDgiexcNo0lEsk=";
+  } // import ./fix-gqlgen-trimpath.nix { inherit unzip; gqlgenVersion= "0.17.20"; });
 
   buildsrht-worker = buildGoModule {
     inherit src version;
     sourceRoot = "source/worker";
     pname = "buildsrht-worker";
     vendorHash = "sha256-y5RFPbtaGmgPpiV2Q3njeWORGZF1TJRjAbY6VgC1hek=";
-
-    patches = [
-      (fetchpatch {
-        name = "update-x-sys-for-go-1.18-on-aarch64-darwin.patch";
-        url = "https://git.sr.ht/~sircmpwn/builds.sr.ht/commit/f58bbde6bfed7d2321a3b17e991c91fc83d4c230.patch";
-        stripLen = 1;
-        hash = "sha256-vQR/T5G5Gz5tY+SEZZabsbnFKW44b+Bs+GDdydyeCDs=";
-      })
-    ];
   };
 in
 buildPythonPackage rec {
@@ -54,8 +44,6 @@ buildPythonPackage rec {
       --replace "all: api worker" ""
   '';
 
-  nativeBuildInputs = srht.nativeBuildInputs;
-
   propagatedBuildInputs = [
     srht
     redis
diff --git a/pkgs/applications/version-management/sourcehut/core.nix b/pkgs/applications/version-management/sourcehut/core.nix
index ff56c62c62e99..e31bc13c82ae1 100644
--- a/pkgs/applications/version-management/sourcehut/core.nix
+++ b/pkgs/applications/version-management/sourcehut/core.nix
@@ -52,7 +52,7 @@ buildPythonPackage rec {
     patches/redis-socket/core/0001-Fix-Unix-socket-support-in-RedisQueueCollector.patch
   ];
 
-  nativeBuildInputs = [
+  propagatedNativeBuildInputs = [
     sassc
     nodejs
   ];
diff --git a/pkgs/applications/version-management/sourcehut/default.nix b/pkgs/applications/version-management/sourcehut/default.nix
index d5c8a97a5f898..2189e54ce3ca5 100644
--- a/pkgs/applications/version-management/sourcehut/default.nix
+++ b/pkgs/applications/version-management/sourcehut/default.nix
@@ -22,7 +22,6 @@ let
       listssrht = self.callPackage ./lists.nix { };
       mansrht = self.callPackage ./man.nix { };
       metasrht = self.callPackage ./meta.nix { };
-      pagessrht = self.callPackage ./pages.nix { };
       pastesrht = self.callPackage ./paste.nix { };
       todosrht = self.callPackage ./todo.nix { };
 
@@ -41,7 +40,7 @@ with python.pkgs; recurseIntoAttrs {
   listssrht = toPythonApplication listssrht;
   mansrht = toPythonApplication mansrht;
   metasrht = toPythonApplication metasrht;
-  pagessrht = pagessrht;
+  pagessrht = callPackage ./pages.nix { };
   pastesrht = toPythonApplication pastesrht;
   todosrht = toPythonApplication todosrht;
   passthru.tests = {
diff --git a/pkgs/applications/version-management/sourcehut/dispatch.nix b/pkgs/applications/version-management/sourcehut/dispatch.nix
index a2da28404ac92..05ed0450e0002 100644
--- a/pkgs/applications/version-management/sourcehut/dispatch.nix
+++ b/pkgs/applications/version-management/sourcehut/dispatch.nix
@@ -18,8 +18,6 @@ buildPythonPackage rec {
     sha256 = "sha256-bZ4ZKohMozZIyP0TUgxETOECib4XGUv29+Mg8ZsoMf8=";
   };
 
-  nativeBuildInputs = srht.nativeBuildInputs;
-
   propagatedBuildInputs = [
     srht
     pyyaml
diff --git a/pkgs/applications/version-management/sourcehut/git.nix b/pkgs/applications/version-management/sourcehut/git.nix
index 1f76e5cb65f8f..5d7478b9440b4 100644
--- a/pkgs/applications/version-management/sourcehut/git.nix
+++ b/pkgs/applications/version-management/sourcehut/git.nix
@@ -63,8 +63,6 @@ buildPythonPackage rec {
       --replace "all: api gitsrht-dispatch gitsrht-keys gitsrht-shell gitsrht-update-hook" ""
   '';
 
-  nativeBuildInputs = srht.nativeBuildInputs;
-
   propagatedBuildInputs = [
     srht
     pygit2
diff --git a/pkgs/applications/version-management/sourcehut/hg.nix b/pkgs/applications/version-management/sourcehut/hg.nix
index c1470c3fc5c6d..eb8fa966242a6 100644
--- a/pkgs/applications/version-management/sourcehut/hg.nix
+++ b/pkgs/applications/version-management/sourcehut/hg.nix
@@ -41,8 +41,6 @@ buildPythonPackage rec {
     vendorSha256 = "sha256-7ti8xCjSrxsslF7/1X/GY4FDl+69hPL4UwCDfjxmJLU=";
   };
 
-  nativeBuildInputs = srht.nativeBuildInputs;
-
   propagatedBuildInputs = [
     srht
     hglib
diff --git a/pkgs/applications/version-management/sourcehut/hub.nix b/pkgs/applications/version-management/sourcehut/hub.nix
index 75d9efe5bd93d..c3a9c509f8934 100644
--- a/pkgs/applications/version-management/sourcehut/hub.nix
+++ b/pkgs/applications/version-management/sourcehut/hub.nix
@@ -2,6 +2,7 @@
 , fetchFromSourcehut
 , buildPythonPackage
 , srht
+, pyyaml
 }:
 
 buildPythonPackage rec {
@@ -15,10 +16,9 @@ buildPythonPackage rec {
     sha256 = "sha256-4n6oQ+AAvdJY/5KflxAp62chjyrlSUkmt319DKZk33w=";
   };
 
-  nativeBuildInputs = srht.nativeBuildInputs;
-
   propagatedBuildInputs = [
     srht
+    pyyaml
   ];
 
   preBuild = ''
diff --git a/pkgs/applications/version-management/sourcehut/lists.nix b/pkgs/applications/version-management/sourcehut/lists.nix
index d981598a7b19a..e4b366b01ed69 100644
--- a/pkgs/applications/version-management/sourcehut/lists.nix
+++ b/pkgs/applications/version-management/sourcehut/lists.nix
@@ -28,15 +28,13 @@ buildPythonPackage rec {
     pname = "listssrht-api";
     modRoot = "api";
     vendorSha256 = "sha256-xnmMkRSokbhWD+kz0XQ9AinYdm6/50FRBISURPvlzD0=";
-  } // import ./fix-gqlgen-trimpath.nix { inherit unzip;});
+  } // import ./fix-gqlgen-trimpath.nix { inherit unzip; });
 
   postPatch = ''
     substituteInPlace Makefile \
       --replace "all: api" ""
   '';
 
-  nativeBuildInputs = srht.nativeBuildInputs;
-
   propagatedBuildInputs = [
     srht
     pygit2
diff --git a/pkgs/applications/version-management/sourcehut/man.nix b/pkgs/applications/version-management/sourcehut/man.nix
index 530101d573520..dadc508edd869 100644
--- a/pkgs/applications/version-management/sourcehut/man.nix
+++ b/pkgs/applications/version-management/sourcehut/man.nix
@@ -17,8 +17,6 @@ buildPythonPackage rec {
     sha256 = "sha256-5xZH6DrTXMdWd26OGICp7lZ/QDjACIa7zNUJHB7jzGo=";
   };
 
-  nativeBuildInputs = srht.nativeBuildInputs;
-
   propagatedBuildInputs = [
     srht
     pygit2
diff --git a/pkgs/applications/version-management/sourcehut/meta.nix b/pkgs/applications/version-management/sourcehut/meta.nix
index 4572fc81b2889..3707ed045447b 100644
--- a/pkgs/applications/version-management/sourcehut/meta.nix
+++ b/pkgs/applications/version-management/sourcehut/meta.nix
@@ -45,8 +45,6 @@ buildPythonPackage rec {
       --replace "all: api" ""
   '';
 
-  nativeBuildInputs = srht.nativeBuildInputs;
-
   propagatedBuildInputs = [
     pgpy
     srht
diff --git a/pkgs/applications/version-management/sourcehut/paste.nix b/pkgs/applications/version-management/sourcehut/paste.nix
index e31473bd34361..253ea8c0b9d67 100644
--- a/pkgs/applications/version-management/sourcehut/paste.nix
+++ b/pkgs/applications/version-management/sourcehut/paste.nix
@@ -22,8 +22,6 @@ buildPythonPackage rec {
       --replace "all: api" ""
   '';
 
-  nativeBuildInputs = srht.nativeBuildInputs;
-
   propagatedBuildInputs = [
     srht
     pyyaml
diff --git a/pkgs/applications/version-management/sourcehut/scm.nix b/pkgs/applications/version-management/sourcehut/scm.nix
index 49eea05a7a7a2..1edc951cbed8b 100644
--- a/pkgs/applications/version-management/sourcehut/scm.nix
+++ b/pkgs/applications/version-management/sourcehut/scm.nix
@@ -18,8 +18,6 @@ buildPythonPackage rec {
     sha256 = "sha256-iSzzyI8HZOpOb4dyt520MV/wds14fNag2+UOF09KS7w=";
   };
 
-  nativeBuildInputs = srht.nativeBuildInputs;
-
   propagatedBuildInputs = [
     srht
     redis
diff --git a/pkgs/applications/version-management/sourcehut/todo.nix b/pkgs/applications/version-management/sourcehut/todo.nix
index 0278fb6bd1738..b6e4f8c33110f 100644
--- a/pkgs/applications/version-management/sourcehut/todo.nix
+++ b/pkgs/applications/version-management/sourcehut/todo.nix
@@ -33,9 +33,7 @@ buildPythonPackage rec {
     pname = "todosrht-api";
     modRoot = "api";
     vendorSha256 = "sha256-LB1H4jwnvoEyaaYJ09NI/M6IkgZwRet/fkso6b9EPV0=";
-  } // import ./fix-gqlgen-trimpath.nix {inherit unzip;});
-
-  nativeBuildInputs = srht.nativeBuildInputs;
+  } // import ./fix-gqlgen-trimpath.nix { inherit unzip; });
 
   propagatedBuildInputs = [
     srht
diff --git a/pkgs/applications/video/hypnotix/default.nix b/pkgs/applications/video/hypnotix/default.nix
index a2da839347f3a..3d5f8d4957abf 100644
--- a/pkgs/applications/video/hypnotix/default.nix
+++ b/pkgs/applications/video/hypnotix/default.nix
@@ -81,7 +81,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/linuxmint/hypnotix";
     changelog = "https://github.com/linuxmint/hypnotix/blob/${src.rev}/debian/changelog";
     license = lib.licenses.gpl3Plus;
-    maintainers = with lib.maintainers; [ dotlambda ];
+    maintainers = with lib.maintainers; [ dotlambda bobby285271 ];
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/applications/video/motion/default.nix b/pkgs/applications/video/motion/default.nix
index c9ea2a51d3d48..1f0f8ace21ba6 100644
--- a/pkgs/applications/video/motion/default.nix
+++ b/pkgs/applications/video/motion/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "motion";
-  version = "4.4.0";
+  version = "4.5.0";
 
   src = fetchFromGitHub {
     owner  = "Motion-Project";
     repo   = "motion";
     rev    = "release-${version}";
-    sha256 = "sha256-srL9F99HHq5cw82rnQpywkTuY4s6hqIO64Pw5CnaG5Q=";
+    sha256 = "sha256-uKEgTQhpslOCfNj8z95/DK4M1Gx4SMRjl1/KPh5KHuc=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
diff --git a/pkgs/applications/video/vlc/default.nix b/pkgs/applications/video/vlc/default.nix
index f3d3bf38b634e..41c14d6e439aa 100644
--- a/pkgs/applications/video/vlc/default.nix
+++ b/pkgs/applications/video/vlc/default.nix
@@ -64,7 +64,6 @@
 , systemd
 , taglib
 , unzip
-, xlibsWrapper
 , xorg
 , zlib
 , chromecastSupport ? true, libmicrodns, protobuf
@@ -150,10 +149,10 @@ stdenv.mkDerivation rec {
     srt
     systemd
     taglib
-    xlibsWrapper
     zlib
   ]
   ++ (with xorg; [
+    libSM
     libXpm
     libXv
     libXvMC
diff --git a/pkgs/applications/video/xine-ui/default.nix b/pkgs/applications/video/xine-ui/default.nix
index d88172a592bd0..7fd00ec66d03e 100644
--- a/pkgs/applications/video/xine-ui/default.nix
+++ b/pkgs/applications/video/xine-ui/default.nix
@@ -12,7 +12,6 @@
 , readline
 , shared-mime-info
 , xine-lib
-, xlibsWrapper
 , xorg
 }:
 
@@ -47,7 +46,6 @@ stdenv.mkDerivation rec {
     ncurses
     readline
     xine-lib
-    xlibsWrapper
   ] ++ (with xorg; [
     libXext
     libXft
diff --git a/pkgs/applications/video/xplayer/default.nix b/pkgs/applications/video/xplayer/default.nix
index c75635b44b311..56ba7957a5a2b 100644
--- a/pkgs/applications/video/xplayer/default.nix
+++ b/pkgs/applications/video/xplayer/default.nix
@@ -97,7 +97,7 @@ stdenv.mkDerivation rec {
     description = "A generic media player from Linux Mint";
     license = with licenses; [ gpl2Plus lgpl21Plus ];
     homepage = "https://github.com/linuxmint/xplayer";
-    maintainers = with maintainers; [ tu-maurice ];
+    maintainers = with maintainers; [ tu-maurice bobby285271 ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/video/xplayer/plparser.nix b/pkgs/applications/video/xplayer/plparser.nix
index c26bd06802f4d..67e394968da54 100644
--- a/pkgs/applications/video/xplayer/plparser.nix
+++ b/pkgs/applications/video/xplayer/plparser.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Playlist parsing library for xplayer";
     homepage = "https://github.com/linuxmint/xplayer-plparser";
-    maintainers = with maintainers; [ tu-maurice ];
+    maintainers = with maintainers; [ tu-maurice bobby285271 ];
     license = licenses.lgpl2Plus;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/virtualization/ecs-agent/default.nix b/pkgs/applications/virtualization/ecs-agent/default.nix
index 0f4f84d0fb60c..9ad13b8768d6f 100644
--- a/pkgs/applications/virtualization/ecs-agent/default.nix
+++ b/pkgs/applications/virtualization/ecs-agent/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname   = "amazon-ecs-agent";
-  version = "1.65.0";
+  version = "1.65.1";
 
   goPackagePath = "github.com/aws/${pname}";
   subPackages   = [ "agent" ];
@@ -11,7 +11,7 @@ buildGoPackage rec {
     rev    = "v${version}";
     owner  = "aws";
     repo   = pname;
-    sha256 = "sha256-vnq76WifMax2GAUSoeYtjmAQc2T8cyer18+PaG87n7A=";
+    sha256 = "sha256-IsbY2ZQQq8eOhdT/ws1Yu7YlnQOyjhDaIr1knOHB4Yc=";
   };
 
   meta = with lib; {
diff --git a/pkgs/applications/virtualization/flintlock/default.nix b/pkgs/applications/virtualization/flintlock/default.nix
index 6c44b019a1c9d..982530dad7496 100644
--- a/pkgs/applications/virtualization/flintlock/default.nix
+++ b/pkgs/applications/virtualization/flintlock/default.nix
@@ -10,16 +10,16 @@
 
 buildGoModule rec{
   pname = "flintlock";
-  version = "0.3.0";
+  version = "0.4.0";
 
   src = fetchFromGitHub {
     owner = "weaveworks";
     repo = "flintlock";
     rev = "v${version}";
-    sha256 = "sha256-zVsI8443/4joOhhuqhrUGsIW6iFvetW9BhHqASL+XUk=";
+    sha256 = "sha256-kHrVpQ4E8b1YV+ofZwd4iGJ9ucVUUam6rxdpOGmvRR4=";
   };
 
-  vendorSha256 = "sha256-PPda8/9WSiWQYyJJQhWo94g8LqGEEwx2u2j2wfqpOv0=";
+  vendorSha256 = "sha256-A3LrikB2KrnSI+OREiLmlkTFpRKQWRB8w4OJ6ApX7oY=";
 
   subPackages = [ "cmd/flintlock-metrics" "cmd/flintlockd" ];
 
@@ -41,7 +41,7 @@ buildGoModule rec{
 
   meta = with lib; {
     description = "Create and manage the lifecycle of MicroVMs backed by containerd";
-    homepage = "https://github.com/weaveworks/flintlock";
+    homepage = "https://github.com/weaveworks-liquidmetal/flintlock";
     license = licenses.mpl20;
     platforms = [ "x86_64-linux" "aarch64-linux" ];
     maintainers = with maintainers; [ techknowlogick ];
diff --git a/pkgs/applications/virtualization/libgovirt/default.nix b/pkgs/applications/virtualization/libgovirt/default.nix
index 9c9da54c3632d..0815781c21f7d 100644
--- a/pkgs/applications/virtualization/libgovirt/default.nix
+++ b/pkgs/applications/virtualization/libgovirt/default.nix
@@ -20,6 +20,11 @@ stdenv.mkDerivation rec {
     sha256 = "HckYYikXa9+p8l/Y+oLAoFi2pgwcyAfHUH7IqTwPHfg=";
   };
 
+  patches = lib.optionals stdenv.isDarwin [
+    # The flag breaks the build on darwin and doesn't seem necessary
+    ./no-version-script-ld-flag.patch
+  ];
+
   nativeBuildInputs = [
     pkg-config
     gobject-introspection
@@ -46,8 +51,8 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://gitlab.gnome.org/GNOME/libgovirt";
     description = "GObject wrapper for the oVirt REST API";
-    maintainers = [ maintainers.amarshall ];
-    platforms = platforms.linux;
+    maintainers = with maintainers; [ amarshall atemu ];
+    platforms = with platforms; linux ++ darwin;
     license = licenses.lgpl21Plus;
   };
 }
diff --git a/pkgs/applications/virtualization/libgovirt/no-version-script-ld-flag.patch b/pkgs/applications/virtualization/libgovirt/no-version-script-ld-flag.patch
new file mode 100644
index 0000000000000..a837c3bf06421
--- /dev/null
+++ b/pkgs/applications/virtualization/libgovirt/no-version-script-ld-flag.patch
@@ -0,0 +1,14 @@
+--- a/govirt/Makefile.in
++++ b/govirt/Makefile.in
+@@ -511,8 +511,7 @@
+ libgovirt_la_LDFLAGS = \
+ 	-version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)	\
+ 	-export-dynamic						\
+-	-no-undefined						\
+-	-Wl,--version-script=$(srcdir)/govirt.sym
++	-no-undefined
+ 
+ libgovirt_la_CFLAGS = \
+ 	$(WARNINGFLAGS_C)
+
+Diff finished.  Fri Oct 28 10:36:38 2022
diff --git a/pkgs/applications/virtualization/libnvidia-container/default.nix b/pkgs/applications/virtualization/libnvidia-container/default.nix
index c74416ac33ba7..d718c61066f2c 100644
--- a/pkgs/applications/virtualization/libnvidia-container/default.nix
+++ b/pkgs/applications/virtualization/libnvidia-container/default.nix
@@ -10,6 +10,7 @@
 , libtirpc
 , makeWrapper
 , substituteAll
+, removeReferencesTo
 , go
 }:
 let
@@ -86,7 +87,7 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = [ "-I${libtirpc.dev}/include/tirpc" ];
   NIX_LDFLAGS = [ "-L${libtirpc.dev}/lib" "-ltirpc" ];
 
-  nativeBuildInputs = [ pkg-config go rpcsvc-proto makeWrapper ];
+  nativeBuildInputs = [ pkg-config go rpcsvc-proto makeWrapper removeReferencesTo ];
 
   buildInputs = [ libelf libcap libseccomp libtirpc ];
 
@@ -105,8 +106,10 @@ stdenv.mkDerivation rec {
       libraryPath = lib.makeLibraryPath [ "$out" driverLink "${driverLink}-32" ];
     in
     ''
+      remove-references-to -t "${go}" $out/lib/libnvidia-container-go.so.1.9.0
       wrapProgram $out/bin/nvidia-container-cli --prefix LD_LIBRARY_PATH : ${libraryPath}
     '';
+  disallowedReferences = [ go ];
 
   meta = with lib; {
     homepage = "https://github.com/NVIDIA/libnvidia-container";
diff --git a/pkgs/applications/virtualization/lima/default.nix b/pkgs/applications/virtualization/lima/default.nix
index 8da73d834aa8b..03d049477b5db 100644
--- a/pkgs/applications/virtualization/lima/default.nix
+++ b/pkgs/applications/virtualization/lima/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "lima";
-  version = "0.12.0";
+  version = "0.13.0";
 
   src = fetchFromGitHub {
     owner = "lima-vm";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-v2zvcUDbzjisJVxEic6VDZewaE0kp1rcB2NK8y3utnQ=";
+    sha256 = "sha256-alE7fUVxJRkLMtdia5ruHxh9nlWIubM0J6iIrmpreRM=";
   };
 
-  vendorSha256 = "sha256-MlfDvdzkegtS8sW/GjkOMLQTK30G6RipHaYzNcwIkEE=";
+  vendorSha256 = "sha256-Kb2R8USWOWRFMjQO3tjdl5UHOzzb2B3ld+5vO2gF3KY=";
 
   nativeBuildInputs = [ makeWrapper installShellFiles ];
 
diff --git a/pkgs/applications/virtualization/nixpacks/default.nix b/pkgs/applications/virtualization/nixpacks/default.nix
index 79a642c3ccf78..ca98669ba4379 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 = "0.10.5";
+  version = "0.11.6";
 
   src = fetchFromGitHub {
     owner = "railwayapp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Z1xmBoRdOTMB9NHGWKQyweT0/PyjGHiK+yj5uKjZPtE=";
+    sha256 = "sha256-9b1j3hY4ChlLIXmNsIjt6SjqHOYSqdY98amV36WPU74=";
   };
 
-  cargoSha256 = "sha256-jLO1UPfu0vN2NCvvGBnUY1UPV1F+0fYlrtsM/AE39tU=";
+  cargoSha256 = "sha256-s34mYMaHElBTD7I6QZtGsVTZUbVkcSmavvLs2k4mJDw=";
 
   # skip test due FHS dependency
   doCheck = false;
diff --git a/pkgs/applications/virtualization/pods/default.nix b/pkgs/applications/virtualization/pods/default.nix
index b02bb74b17338..eba18a76b1494 100644
--- a/pkgs/applications/virtualization/pods/default.nix
+++ b/pkgs/applications/virtualization/pods/default.nix
@@ -15,19 +15,19 @@
 
 stdenv.mkDerivation rec {
   pname = "pods";
-  version = "1.0.0-beta.6";
+  version = "1.0.0-beta.7";
 
   src = fetchFromGitHub {
     owner = "marhkb";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-ndsxa4d4lB1kZtRoLmAs/3e93qoKlS1YjB1GK9xby/A=";
+    sha256 = "sha256-b44x+VyoiDafsPqfCTPm70zZJfNYQ31/UXsrXP6K29E=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
-    sha256 = "sha256-qgR7wVXGJyAYCh9B9uJ63njXjiZa4BswfFMBhBpvKoM=";
+    sha256 = "sha256-kgXt5enZ0VJr6hmEVcCREna4Y53q1jEFzUMsGtV2zvY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/virtualization/qemu/default.nix b/pkgs/applications/virtualization/qemu/default.nix
index 42a556a451fb4..46bbc3b914b93 100644
--- a/pkgs/applications/virtualization/qemu/default.nix
+++ b/pkgs/applications/virtualization/qemu/default.nix
@@ -14,7 +14,7 @@
 , gtkSupport ? !stdenv.isDarwin && !xenSupport && !nixosTestRunner, gtk3, gettext, vte, wrapGAppsHook
 , vncSupport ? !nixosTestRunner, libjpeg, libpng
 , smartcardSupport ? !nixosTestRunner, libcacard
-, spiceSupport ? !stdenv.isDarwin && !nixosTestRunner, spice, spice-protocol
+, spiceSupport ? true && !nixosTestRunner, spice, spice-protocol
 , ncursesSupport ? !nixosTestRunner, ncurses
 , usbredirSupport ? spiceSupport, usbredir
 , xenSupport ? false, xen
diff --git a/pkgs/applications/virtualization/virt-viewer/default.nix b/pkgs/applications/virtualization/virt-viewer/default.nix
index ed882709aa143..2e8aa34286a6f 100644
--- a/pkgs/applications/virtualization/virt-viewer/default.nix
+++ b/pkgs/applications/virtualization/virt-viewer/default.nix
@@ -29,7 +29,7 @@
 
 assert spiceSupport -> (
   gdbm != null
-  && libcap != null
+  && (stdenv.isLinux -> libcap != null)
   && spice-gtk_libsoup2 != null
   && spice-protocol != null
 );
@@ -76,12 +76,13 @@ stdenv.mkDerivation rec {
     libvirt-glib
     libxml2
     vte
-  ] ++ optionals spiceSupport [
+  ] ++ optionals spiceSupport ([
     gdbm
-    libcap
     spice-gtk_libsoup2
     spice-protocol
-  ];
+  ] ++ optionals stdenv.isLinux [
+    libcap
+  ]);
 
   # Required for USB redirection PolicyKit rules file
   propagatedUserEnvPkgs = optional spiceSupport spice-gtk_libsoup2;
@@ -94,8 +95,8 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A viewer for remote virtual machines";
-    maintainers = [ maintainers.raskin ];
-    platforms = platforms.linux;
+    maintainers = with maintainers; [ raskin atemu ];
+    platforms = with platforms; linux ++ darwin;
     license = licenses.gpl2;
   };
   passthru = {
diff --git a/pkgs/applications/window-managers/gamescope/default.nix b/pkgs/applications/window-managers/gamescope/default.nix
index f6660b3c0c8fa..7e4003c68046f 100644
--- a/pkgs/applications/window-managers/gamescope/default.nix
+++ b/pkgs/applications/window-managers/gamescope/default.nix
@@ -26,7 +26,7 @@
 }:
 let
   pname = "gamescope";
-  version = "3.11.47";
+  version = "3.11.48";
 in
 stdenv.mkDerivation {
   inherit pname version;
@@ -35,7 +35,7 @@ stdenv.mkDerivation {
     owner = "Plagman";
     repo = "gamescope";
     rev = "refs/tags/${version}";
-    hash = "sha256-GkvujrYc7dBbsGqeG0THqtEAox+VZ3DoWQK4gkHo+ds=";
+    hash = "sha256-/a0fW0NVIrg9tuK+mg+D+IOcq3rJJxKdFwspM1ZRR9M=";
   };
 
   patches = [ ./use-pkgconfig.patch ];
diff --git a/pkgs/applications/window-managers/ion-3/default.nix b/pkgs/applications/window-managers/ion-3/default.nix
index 30328cd7719a3..6fb504144b6cf 100644
--- a/pkgs/applications/window-managers/ion-3/default.nix
+++ b/pkgs/applications/window-managers/ion-3/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, xlibsWrapper, lua, gettext, groff }:
+{ lib, stdenv, fetchurl, lua, gettext, groff, libICE, libSM, libX11, libXext }:
 
 stdenv.mkDerivation rec {
   pname = "ion";
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "1nkks5a95986nyfkxvg2rik6zmwx0lh7szd5fji7yizccwzc9xns";
   };
 
-  buildInputs = [ xlibsWrapper lua gettext groff ];
+  buildInputs = [ libICE libSM libX11 libXext lua gettext groff ];
 
   buildFlags = [ "LUA_DIR=${lua}" "X11_PREFIX=/no-such-path" "PREFIX=\${out}" ];
 
diff --git a/pkgs/applications/window-managers/notion/default.nix b/pkgs/applications/window-managers/notion/default.nix
index e59103d7d6d04..4e546c0671556 100644
--- a/pkgs/applications/window-managers/notion/default.nix
+++ b/pkgs/applications/window-managers/notion/default.nix
@@ -2,7 +2,7 @@
 , lua, gettext, which, groff, xmessage, xterm
 , readline, fontconfig, libX11, libXext, libSM
 , libXinerama, libXrandr, libXft
-, xlibsWrapper, makeWrapper
+, makeWrapper
 }:
 
 stdenv.mkDerivation rec {
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkg-config makeWrapper groff ];
   buildInputs = [ lua gettext which readline fontconfig libX11 libXext libSM
-                  libXinerama libXrandr libXft xlibsWrapper ];
+                  libXinerama libXrandr libXft ];
 
   buildFlags = [ "LUA_DIR=${lua}" "X11_PREFIX=/no-such-path" ];